OrtogOnBlender - O que é e Aspectos Técnicos

O que é o OrtogOnBlender?

_images/20190716_2.png

O OrtogOnBlender é um add-on para o ensino do planejamento de cirurgia ortognática digital criado por Cicero Moraes, Dr. Everton da Rosa e Dr. Rodrigo Dornelles.

Aviso

O OrtogOnBlender e demais módulos não são softwares de diagnóstico e uso clínico, mas ferramentas didáticas de ensino de planejamento cirúrgico. A utilização dos mesmos para qualquer fim é de inteira responsabilidade do usuário.

Como o próprio nome lembra, o mesmo funciona sob Blender e é escrito na linguagem de programação Python. Ele roda no Windows, no Linux e no Mac OS X e é fácil de instalar.

O add-on trata-se um conjunto de comandos sequenciais que foram organizados e programados de modo a facilitar o planejamento de cirurgia ortognática, fornecendo ao especialista não apenas as soluções encontradas nativamente no Blender, mas se comunicando com programas externos que ampliam as potencialidades do mesmo.

É desenvolvido com software e licença livres, mas pode trabalhar em conjunto com ferramentas fechadas e proprietárias, como software de fotogrametria e scanners intraorais.

Aspectos Técnicos Pormenorizados

Abaixo serão apresentadas as seções do OrtogOnBlender e a função dos comandos principais de cada uma.

Upgrade Script

O campo de atualização de script apresenta a versão atual do OrtogOnBlender. Quando temos o código VERSION: 20190710c, por exemplo, significa que a última programação ocorreu no ano de 2019, no mês de julho e no dia 10, sendo a terceira vez, pela letra “c”, que o diretório foi enviado ao servidor.

Assim que o usuário clica no botão UPGRADE ORTOG o addon é atualizado e o programa encerrado para que possa ser aberto novamente já com a última versão.

Patient’s Name

No campo Name: coloca-se o primeiro nome do paciente e no Surname: o sobrenome ou sobrenomes principais. Se o usuário colocar Name: John e Surname: Simpson, por exemplo, resultará no diretório: John_Simpson. Se necessário colocar mais informação, é pedido que se complemente junto a um sinal de underline ( _ ), como por exemplo: Name: John, Surname: Simpson_Rivera.

No caso de trabalhos com o mesmo paciente em datas diferentes, é possível complementar o sobrenome com a data, seguindo o exemplo do nome do upgrade. Se o paciente John Simpson fora tratado em julho de 2019 o preenchimento fica assim: Name: John, Surname: Simpson_201907.

O endereço do diretório depende do sistema operacional. Imaginando que o nome do usuário seja NoteOffice e o do paciente John Simpson, temos as seguintes situações:

No Windows: C:/Users/NoteOffice/OrtogOnBlenderDir/John_Simpson/

No Mac OS X: /Users/NoteOffice/OrtogOnBlenderDir/John_Simpson/

No Linux: /home/NoteOffice/OrtogOnBlenderDir/John_Simpson/

O primeiro arquivo criado será o Base-John_Simpson.blend, que neste caso ficaria assim: ~/OrtogOnBlenderDir/John_Simpson/Base-John_Simpson.blend (onde o sinal ~ representa o diretório do usuário).

Aviso

Evite o uso de caracteres especiais como “ç, ś, á, $” e espaço. Isso pode causar problemas em alguma biblioteca utilizada pelo OrtogOnBlender.

CT-Scan Reconstruction

Esta seção conta com 4 predefinições:

  • MANUAL: O usuário configura manualmente o passo-a-passo da reconstrução.

  • VOXEL: Permite a visualização do voxel data, ou seja, a volumetria da tomografia sem a malha 3D (3D mesh).

  • AUTOMATIC: Reconstrói a tomografia automaticamente sem a necessidade de configuração passo-a-passo.

  • CUSTOM: Permite uma reconstrução totalmente customizada de apenas uma malha.

Importante

A reconstrução de tomografias computadorizadas diretamente de arquivos DICOM só é possível graças ao software DicomToMesh, desenvolvido por Adrian Schneider. A ele e toda a equipe do AOT AG são direcionados efusivos agradecimentos!

Para uma maior compreensão das seções, seguem abaixo as suas descrições pormenorizadas.

Manual

Em CT-Scan Preparing o usuário seleciona o diretório onde estão os arquivos DICOM e clica em Organize para o sistema copiar os arquivos e organizar em diretórios correspondentes ao SeriesNumber da tomografia.

Assim que a tomografia for copiada e organizada o sistema abrirá o LibreOffice com uma planilha descrevendo o número do diretório, o número de arquivos dentro do diretório e a descrição do mesmo. Caso o LibreOffice não esteja presente no sistema operacional os dados podem ser visualizados no terminal (prompt).

Dica

Procure escolher os diretórios cujo a descrição seja compatível com o tecido mole: “MOLE”, “PM”, “BLANDAS”, “SOFT TISSUE”, etc. Deste modo é muito provável que não seja necessário alterar os fatores padronizados: 200, -300 e 1430.

Aviso

No caso de arquivo DICOM (.DCM) único o usuário precisará abrí-lo no Slicer e exportá-lo como fatias. Para tal, basta seguir este tutorial: https://www.youtube.com/watch?v=5X2xJqlEiOo.

Em Threshold Setup o usuário indica um diretório criado no processo anterior e em seguida clica em Open Slicer! de modo a abrir o Slicer e capturar os valores da escala Hounsfield.

_images/20191203_1.png

Editor de texto aberto automaticamente após o usuário clicar no botão Convert DICOM to 3D.

Em CT-Scan Reconstruction o usuário pode selecionar o diretório onde se encontram os arquivos DICOM e clicar em Convert DICOM to 3D para proceder com a reconstrução.

Dica

Assim que o botão é clicado o OrtogOnBlender abre um arquivo de texto com os dados do tomógrafo. Estes dados podem ser enviados ao banco de dados de tomógrafos do sistema, de modo a fazer as próximas reconstruções automaticamente.

Os parâmetros Bone Factor (Fator Ossos), Soft Factor (Fator Mole) e Teeth Factor (Fator Dentes) contém um valor pré definido da escala Hounsfield, que funciona em grande parte dos casos. Por padrão está setado em 200, -300 e 1430, números que funcionam na maioria das tomografias helocoidais.

Ao clicar em Save será gerado o seguinte arquivo: CT_Scan-John_Simpson.blend.

Aviso

Esta seção pode ser substituída pela reconstrução automática oferecida no CT-Scan Auto 3D Reconstruction. No entanto, para que o processo automático funcione é necessário que o tomógrafo seja cadastrado no banco de dados do OrtogOnBlender.

VOXEL

_images/20190712_5.png

Import DICOM Slices com boolean na parte inferior para ver os detalhes internos.

O usuário pode importar as fatias da tomografia em forma de um voxel data, basta setar o local onde se encontra a tomografia no ícone de diretório e em seguida clicar em Import DICOM Slices.

_images/20190712_6.png

CT-Scan IMG Slices.

Ao importar o voxel o usuário tem à sua disposição a possibilidade de visualizar as fatias do mesmo. Basta ir na aba Rendering, habilitar o painel direito (N) e clicar em Import CT-Scan IMG Slices (no Ortog). Ao fazer isso serão apresentadas algumas informações sobre a tomografia:

  • IMGPathSeq: Local onde se encontra a sequência das imagens.

  • SliceThickness: Espaço (em milímetros) entre as fatias.

  • PixelSpacingX: Valor de um pixel em X (em milímetros).

  • PixelSpacingY: Valor de um pixel em Y (em milímetros).

  • IMGDimX: Dimensão (em pixels) da imagem em X.

  • IMGDimY: Dimensão (em pixels) da imagem em Y.

Há ainda a possibilidade do usuário editar e criar uma nova sequência de arquivos DICOM. Basta fazer as alterações, salvar uma por uma das imagens alteradas (Alt+S) e clicar em Export DICOM Slices.

Ao clicar em Save será gerado o seguinte arquivo: Voxel-John_Simpson.blend.

AUTOMATIC

_images/20190715_2.png

Reconstruções perfiladas: Mole, Ossos e Dentes.

Os desenvolvedores estão cadastrando tomógrafos de modo a fazer a reconstrução automaticamente sem a intervenção do usuário. Assim que o cadastro é feito basta setar a localização do diretório com os DICOMs e clicar em AUTOMATIC DICOM TO 3D, que o programa se encarrega de organizar, escolher o diretório, corrigir as eventuais incompatibilidades e reconstruir a tomografia em 3D.

Ao reconstruir automaticamente a tomografia o sistema cria um diretório chamado CT-Scan dentro da pasta do paciente:

Nela se encontrarão as fatias DICOM utilizadas no processo, permitindo que o usuário possa utilizá-las posteriormente, caso necessário, sem precisar lançar mão do DVD geralmente fornecido pela clínica ou mesmo os gigantescos arquivos disponíveis de modo online.

Ao clicar em Save será gerado o seguinte arquivo: CT_Scan_Auto-John_Simpson.blend.

CUSTOM

A seção CUSTOM tem o funcionamento muito parecido com o MANUAL. Primeiro o usuário organiza a tomografia, em seguida abre o diretório desejado e testa o fator no Slicer. A diferença de abordagem é na última parte, onde apenas uma malha pode ser reconstruída por vez:

  1. Em CT-Scan 3D Reconstruction o usuário informa o diretório da sequência pretendida.

  2. Em Reconst. Factor informa o valor da escala Hounsfield.

  3. Em Decimate Factor informa o fator de simplificação que vai de 0 a 1, onde 0 é sem simplificação e 1 simplificação total.

  4. Em Object Name o usuário informa o nome da malha que será gerada.

  5. Ao informar todos os dados basta clicar em Convert DICOM to 3D e aguardar a reconstrução.

Dica

O usuário pode reconstruir o número de malhas que necessitar, alterando o fator a cada peça criada. Essa técnica é muito útil para reconstruções como a ATM, por exemplo. Neste caso se reconstrói o osso geral mais grosso (menor fator), em seguida um osso mais fino (maior fator) e ao final isola-se a área de interesse extraindo a região mais grossa com o booleana Difference e unindo as peças com a booleana Union.

Ao clicar em Save será gerado o seguinte arquivo: CT_Scan-John_Simpson.blend.

Graphic References

Em Mode o usuário pode escolher posicionar o cursor ou selecionar objetos.

Na seção Frankfurt Alignment o usuário pode alinhar o crânio segundo esse protocolo. Para isso, basta:

  1. Ocultar a face advinda da tomografia clicando em Hide Face (CT-Scan).

  2. Selecionar Cursor em Mode, clicar no ponto do crânio correspondente à órbita direita e em seguida clicar no botão Orbital right.

  3. Repetir o processo com os pontos: Orbital left, N point e Po left.

  4. Depois que todos os pontos estiverem posicionados, clicar em Align! e o crânio será alinhado ao plano de Frankfurt.

Aviso

O alinhamento só funciona se o crânio for nomeado como Bones, como acontece quando a tomografia é importada.

Em Reference Lines o usuário tem a sua disposição uma série de linhas de referência pré-configuradas:

  • Vertical Center Line: Cria uma linha central (olhando pela frente) no sentido vertical.

  • Horizontal Center Line: Cria uma linha central (olhando pela frente) no sentido horizontal.

  • Horizontal Side Line: Cria uma linha pela lateral (olhando pela direita) no sentido horizontal.

De modo a não poluir a visualização dos dados os pontos anatômicos podem ser ocultos pelo botão Hide Anatomical Points.

Assim que as linhas são posicionadas e o crânio alinhado o usuário poderá então desparentear o mole o os dentes dos ossos importado nas seções anteriores, clicando no botão UNGROUP!!!.

Ao clicar em Save será gerado o seguinte arquivo: Ref-John_Simpson.blend.

Aviso

É muito importante desparentear o mole dos ossos, caso contrário o addon apresentará erro ao acionar posteriormente a dinâmica do mole, rotacionando o rosto de modo incompatível com o crânio.

Import Archs

Archs Teeth Import

A seção Import Archs permite ao usuário importar também as tomografias das arcadas dentárias, tanto a réplica em gesso quando o molde, que pode ser convertido em positivo através da inversão dos normals.

Para reconstruir o DICOM relacionado a arcada o usuário deverá:

  1. Inidicar o local onde os slices estão presentes.

  2. Indicar o fator de reconstrução (escala Hounsfield).

  3. Caso haja dúvida em relação ao fator, pode-se abrir o Slicer em Open Slicer de modo a testá-lo.

  4. Por fim basta indicar o diretório e clicar em Archs Generator e aguardar a reconstrução da malha.

Se a arcada foi gerada em um software externo, ou mesmo por um scanner intraoral, basta importar os modelos através do botão Import STL.

É quase certo que as arcadas venham desalinhadas com os dentes reconstruídos a partir da tomografia, em face disso será necessário que o usuário alinhe as arcadas com a tomografia.

Assim que os moldes forem alinhados ao crânio, o usuário precisará segmentar a região de interesse dos mesmos.

Aligment

Ao importar os arcos superior e inferior, o usuário precisará alinhá-los a tomografia reconstruída. Para isso ele recorerrá a seção Aligment:

  1. Selecione o objeto que será alinhado.

  2. Coloque o ponto de ancoragem no objeto de ORIGEM por primeiro: Point 1a - Origin.

  3. Coloque o ponto de ancoragem no objeto selecionado na sequência: Point 1b - Align.

  4. Repita a operação com os pontos: Point 2a - Origin e Point 2b - Align.

  5. Repita a operação com os pontos: Point 3a - Origin e Point 3b - Align.

  6. Assim que todos estiverem posicionados clique em ALIGN!.

  7. Se necessário um alinhamento com maior precisão, use o botão Force ICP Align (Slow).

Aviso

Muita atenção, temos dois objetos, o de origem, que é aquele que já está alinhado e o de alinhamento que é o que deverá ser selecionado antes de se fazer o procedimento.

Importante

O alinhamento via ICP foi viabilizado graças ao add-on object_alignment desenvolvido por Patrick Ryan Moore (patmo141).

Segmentation

Na seção Segmentation o usuário:

  1. Fecha o modelos se o mesmo estiver aberto (Close Holes (Remesh)?).

  2. Seleciona o objeto a ser cortado.

  3. Clica em Draw Line e desenha a região a ser cortada.

  4. Apagar a área desejada:

_images/20190712_2.png

Exemplo de Subtract IN.

  • Caso deseje apagar o que está dentro da região clique em Subtract IN.

_images/20190712_3.png

Exemplo de Subtract OUT.

  • Caso deseje apagar o que está fora da região, clique em Subtract OUT.

Pode ser necessário segmentar a mandíbula. Para tal o usuário deve:

  1. Selecionar o crânio e clicar em Edit Mode Clean para entrar em modo de edição sem nenhum vertex selecionado.

  2. Selecionar o vértice inicial e clicar em Sel. More, automaticamente uma leva de vértices vizinhos serão selecionados e o comando pode ser ativado até que a área de seleção satisfaça a região pretendida, no caso a mandíbula. Caso o usuário selecione vértices demais e ultrapasse a região desejada, ele pode retroceder a seleção clicando em Sel. Less.

  3. Assim que a parte desejada é selecionada, basta clicar en Separate Selected! e o sistema se encarrega de separar a região, sair do modo de edição e ainda deixar selecionado apenas o objeto correspondente a seleção efetuada pelo usuário.

  4. Depois de segmentar as regiões de interesse dos modelos (dentes), crânio e mandíbula pode-se juntá-las com a booleana Union.

  5. Há ainda a possibilidade de trocar o pivô de rotação, em Pivot Rotation, caso o usuário deseje testar a rotação de uma mandíbula segmentada.

Reconstruction

No caso de correção de buracos simples nas malhas (buracos de casca), basta selecionar o objeto desejado e clicar em Close All Holes.

O OrtogOnBlender oferece a possibilidade de reconstruir a malha pelo algoritmo Poisson através do botão Poisson Reconstruction. A ferramenta é útil nos casos em que o corte por boolean e o fechamento de buracos se mostrarem ineficientes.

Ao clicar em Save será gerado o seguinte arquivo: Arch-John_Simpson.blend.

Segmentation

O Segmentation concentra ferramentas de segmentações gerais e específicas.

_images/20190712_1.png

Separated Linked: Objeto original com o cursor posicionado (esquerda) e objeto resultante (direita).

Se o usuário desejar separar uma região com vértices ligados, como por exemplo o crânio em relação a ruídos reconstruídos no processo, ele pode posicionar o cursor sobre a área de interesse clicando nela e em seguida em Separated Linked, ao final sobrará apenas a malha onde os vértices estejam ligados por edges e faces.

No caso de correção de buracos simples nas malhas (buracos de casca), basta selecionar o objeto desejado e clicar em Close All Holes.

Em Boolean Segmentation o usuário pode fazer um desenho de corte no botão Draw Line e escolher se deseja apagar a área dentro do desenho (Subtract IN) ou fora dele (Subtract OUT).

Boolean

Os cálculos booleanos são ferramentas imprescindíveis para o planejamento cirúrgico, tanto pela sua importância na geração de osteotomias quanto na criação de splints e guias.

As ferramentas oferecidas pelo OrtogOnBlender são umas das mais robustas disponíveis na computação gráfica 3D para as ciências da saúde.

_images/20190713_1.png

Exemplos de cálculos booleanos.

  • Difference: Calcula Objeto 1 - Objeto 2 (A-B) ou Objeto 2 - Objeto 1 (B-A).

  • Union: Unifica A+B ou B+A.

  • Intersect: Gera um malha da intersecção de A e B.

  • MULTIPLE UNION: Unifica malhas sem limite de objetos: A+B+C+D+E…

Importante

As poderosas ferramentas de boolean foram viabilizadas graças à biblioteca Cork desenvolvida por Gilbert Bernstein (gilbo).

Surface Cut

Permite ao usuário fazer cortes sobre a casca da malha.

Para efetuar um corte:

  1. Selecione o objeto a ser cortado.

  2. Clique em Create Points e vá clicando sobre a região que pretende cortar. Assim que finalizar o desenho clique no botão direito do mouse ou no ESC.

  3. Para ver a linha de corte clique em Create Bezier Line e edite a linha se necessário.

  4. Se desejar fazer um corte simples, clique em Cut Line!

  5. Se desejar fazer um corte duplo e mais seguro, clique em Cut Line Double.

Teeth Segmentation Tube

Esta seção corta os dentes utilizando linhas que se convertem em finos tubos, cujo o diâmetro será a base de corte por intersecção.

Para tal o usuário deverá:

  1. Selecionar o modelo, clicar em Create Points e criar os pontos correspondentes a linha.

  2. Depois de criar os pontos, clicar em ESC e posteriormente em Create Bezier Tube.

  3. Em seguida basta clicar em Cut Line Teeth!

Teeth Segmentation Line

Esta seção corta os dentes diretamente na malha em Edit Mode, utilizando a ferramenta Knife.

Para tal o usuário deverá:

  1. Selecionar o modelo e clicar em Prepare Mesh to Cut.

  2. Clicar em Knife Cut e fazer os cortes necessários de modo que o ponto inicial seja também o final (loop). Assim que finalizar, clicar em Enter.

  3. Clicar em Edge Split Separation.

Separated Teeth

Para utilizar esta seção o usuário precisará setar um dos fatores da escala Hounsfield para o valor de separação da região do côndilo, que geralmente é 655.

Assim que a tomografia for reconstruída:

  1. Deixar visível apenas o objeto do fator 655 e pintar a parte externa com Weight Paint 1 e se necessário, usar o Weight Paint 0 que exclui o peso do local.

  2. Apague o peso 0 no botão Delete Blue.

  3. Clique em Separate Skull-Mandible para separar a mandíbula do crânio.

Dica

Estas ferramentas também servem para selecionar e desselecionar faces, além de permitir apagar também a parte com peso 1 (vermelha), muito útil no isolamento de objetos externos (faces) ou internos (seios nasais, vias respiratórias e afins).

Aviso

No Blender 2.80 a ferramenta de pintura de peso está selecionando objetos ocultos e isso causa um erro no Separate Skull-Mandible. No lugar de usar o Weight Paint, entre em Modo de Edição e pinte a área desejada com o C e com a visualização Solid ativa. Inverta a seleção com CTRL+I e apague as faces.

Teeth Touched

Em face da dificuldade da separação da mandíbula, principalmente em casos onde os dentes se tocam, o OrtogOnBlender passou a oferecer uma solução que facilita a segmentação desta peça anatômica de modo semi automático.

_images/20190713_2.png

Pontos anatômicos posicionados (à esquerda) e mandíbula separada com o Mandible Segmentation (à direita).

Como proceder com a segmentação:

  1. Posicione todos os pontos anatômicos disponíveis na seção.

  2. Clique em Mandible Segmentation.

  3. Se necessário, apague as regiões que vieram a mais e então clique em Separate Skull from Mandible.

Other Tools

No caso de correção de buracos simples nas malhas (buracos de casca), basta selecionar o objeto desejado e clicar em Close All Holes.

O OrtogOnBlender oferece a possibilidade de reconstruir a malha pelo algoritmo Poisson através do botão Poisson Reconstruction. A ferramenta é útil nos casos em que o corte por boolean e o fechamento de buracos se mostrarem ineficientes.

Os seguintes botões oferecem a possibilidade de cortar um objeto de fora-a-fora sem fechá-lo, como no caso do Boolean Segmentation:

  1. Selecione o objeto a ser cortado.

  2. Clique em Draw Line para desenhar uma linha.

  3. Clique em Cut Draw para cortar o objeto.

  4. Apague a linha e a parte não desejada (se necessário).

Há ainda a possibilidade de segmentar um objeto por seleção de vértices. Para tal:

  1. Selecione o objeto e clique em Edit Mode Clean.

  2. Selecione o vértice inicial e clicar em Sel. More, automaticamente uma leva de vértices vizinhos serão selecionados e o comando pode ser ativado até que a área de seleção satisfaça a região pretendida, no caso a mandíbula. Caso o usuário selecione vértices demais e ultrapasse a região desejada, ele pode retroceder a seleção clicando em Sel. Less.

  3. Assim que a parte desejada é selecionada, basta clicar en Separate Selected! e o sistema se encarrega de separar a região, sair do modo de edição e ainda deixar selecionado apenas o objeto correspondente a seleção efetuada pelo usuário.

Há ainda a possibilidade de trocar o pivô de rotação, em Pivot Rotation, caso o usuário deseje testar a rotação de uma mandíbula segmentada, por exemplo.

Ao clicar em Save será gerado o seguinte arquivo: Seg-John_Simpson.blend.

Photo Face Segmentation

Nesta seção o usuário pode isolar a porção frontal da face por segmentação automática.

_images/20191203_2.png

Fotografias originais (acima) e após a segmentação facial (abaixo).

Para tal basta:

  1. Indicar o diretório com as fotos.

  2. Clicar em Start Segmentation e aguardar.

  3. Assim que os cálculos forem finalizados será aberto o gerenciador de arquivos apresentando as imagens resultantes.

Photogrammetry Start

No OrtogOnBlender é possível digitalizar faces e objetos através de fotogrametria, grosso modo, escaneamento 3D por fotografia.

É imprescindível que o usuário clique em Start Segmentation! de modo a limpar a cena para receber o modelo digitalizado. Caso não faça isso, pode ter certa dificuldade em localizar o modelo para alinhá-lo e segmentá-lo.

O sistema oferece três opções para o usuário: OpenMVG+OpenMVS (Padrão), SMVS+Meshlab e Meshroom (AliceVision).

_images/20190713_3.png

Digitalização com textura ativada (à esquerda) e digitalização com relevo em malha e alta resolução (à direita).

OpenMVG+OpenMVS

Trata-se do padrão do sistema, o OpenMVG+OpenMVS costuma ser mais rápido do que as outras opções e oferece uma textura de alta qualidade.

O processo de digitalização é relativamente simples, basta fazer uma sequência de fotos, copiá-la para um diretório que será indicado pelo usuário e na sequência clicar no botão Start Photogrammetry!

Dica

Se o objetivo for digitalizar faces, não há a necessidade de mudar os valores de D Factor e de Smooth Factor que por padrão são 6 e 16. No caso de digitalização de peças arqueológicas, por exemplo, os valores seriam 4 e 4, já na digitalização de modelos de arcadas dentárias os valores serão 1 e 1.

Dica

Na documentação do OrtogOnBlender são fornecidos dois protocolos para a tomada fotográfica: Protocolo de fotogrametria da face e Protocolo simples de fotogrametria para crânios. Procure-os no índice.

Importante

As feramentas de fotogrametria só foram possíveis dentro do Blender graças as bibliotecas OpenMVG de Pierre Moulon, a biblioteca OpenMVS de cdcseacave e a biblioteca AliceVision (Meshroom).

SMVS+Meshlab

Mais lento, mas geralmente com melhores resultados em cenários maiores. A versão do Windows não conta com geração de textura.

O processo de digitalização é simples, basta fazer uma sequência de fotos, copiá-la para um diretório que será indicado pelo usuário e na sequência clicar no botão Alternative Photogrammetry I

Meshroom (AliceVision)

Fornece resultados inferiores aos dois outros modos, mas oferece uma alternativa de geração de textura no Windows. Ainda indisponível para o Mac OS X.

O processo de digitalização é simples, basta fazer uma sequência de fotos, copiá-la para um diretório que será indicado pelo usuário e na sequência clicar no botão Alternative Photogrammetry II

Ao clicar em Save será gerado o seguinte arquivo: Photogram-John_Simpson.blend.

Photogrammetry Align & Scale

A fotogrametria fornecida pelo OrtogOnBlender costuma oferecer bons resultados em relação ao volume do modelo, no entanto, quando a malha é gerada ela não conta com a dimensão real, ficando a cargo do usuário redimensionar o objeto colocando-o na escala.

Para tal, é necessário seguir este passo-a-passo:

  1. Selecione o objeto resultante da fotogrametria.

  2. Clique no ponto cantal lateral direito (ou em um ponto de referência à direita do objeto) e em seguida pressione Cantal Lateral Right.

  3. Clique no ponto cantal lateral esquerdo (ou em um ponto de referência à esquerda do objeto) e em seguida pressione Cantal Lateral Left.

  4. Clique em um ponto inferior como o nariz, lábio, etc. Em seguida pressione Down Point.

  5. Informe a distância entre os dois primeiros pontos em Real Size pressione o ENTER.

  6. Clique em Align and Resize.

Logo abaixo o usuários contará com uma série de ferramentas para segmentar o modelo da maneira que melhor se encaixar às suas necessidades:

  • Segmentation Cut Through: Corte lateral de fora a fora. Mais simples, mas pode apresentar problema em faces com alto grau de assimetria.

  • Surface Cut: Corte por desenho tridimensional sobre a superfície da face, o usuário tem maior controle de segmentação da estrutura.

Ao clicar em Save será gerado o seguinte arquivo: Align-John_Simpson.blend.

Photogrammetry Modifers

_images/20190715_1.png

Digitalização original (à esquerda) e digitalização com modificadores ativados (à direita).

Um dos diferenciais da fotogrametria do OrtogOnBlender é a possibilidade de enriquecer os detalhes de relevo com modificadores atribuídos automaticamente durante o processo de digitalização.

São três os modificadores:

  • Smooth: Alisa a malha dando um aspecto mais suave.

  • Multires: Subdivide a malha aumentando a sua resolução.

  • Displace: Cria um relevo na malha usando como referência a sua textura.

Dica

Se desejar alterar os parâmetros dos modificadores, vá até a aba Modifiers, localizada à direita da interface onde vemos um ícone de uma chave de boca.

Anatomical Poins

O OrtogOnBlender conta com um vasto conjunto de pontos anatômicos para a região da cabeça:

  • Anatomical Points - Head.

  • Anatomical Points - Maxilla.

  • Anatomical Points - Mandible.

  • Anatomical Points - Teeth.

  • Anatomical Points - Soft Tissue.

Como proceder para inserir um ponto:

  1. Troque o modo para Cursor (posicionamento de cursor).

  2. Clique sobre a região desejada na malha 3D.

  3. Pressione o botão do ponto anatômico desejado.

Para ocultar e visualizar os pontos basta usar os botões Hide Anatomical Points e Show Anatomical Points.

Importante

A composição das ferramentas de pontos anatômicos foi possível graças ao auxílio constante do Dr. Richard Gravalos, a ele são direcionados efusivos agradecimentos!

Cephalometry

Esta seção apresenta ângulos e medidas que são gerados a partir dos pontos anatômicos. O OrtogOnBlender oferece duas opções de cefalometria: Arnett e USP (+Unesp/Araraquara).

USP (+Unesp/Araraquara)

Em cada ângulo apresentado o usuário pode visualizar se os pontos estão presentes na cena. Se falta algum ponto para compor um ângulo, basta adicioná-lo clicando no botão correspondente.

Sempre que o usuário desejar ele pode atualizar os cálculos clicando em Calculate!!!

Importante

Para que o cálculo seja efetuado, é imprescindível que todos os pontos anatômicos estejam visíveis. Para tal, o usuário deve clicar em Show Anatômical Points.

Para mostrar ou atualizar os valores, basta clicar em Calculate All!!!

Osteotomy

Esta seção é responsável pela criação das osteotomias do crânio. Ao usuário são oferecidas as seguintes opções: AUTO, MANUAL, BOOLEAN e DRAW.

AUTO

Oferece a possibilidade de inserir os planos de corte baseados na posição dos pontos anatômicos.

Como funciona:

  1. Posicione os pontos anatômicos informados nos botões da seção.

  2. Clique em Create Cut Planes e todos os planos de corte serão posicionados automaticamente, além disso o usuário contará com manipuladores visuais para deslocar os planos pelo espaço 3D.

  3. Junte os planos de corte em um objeto (com o shift pressionado), selecionando-os e clicando em Join All (Union).

  4. Para cortar selecione primeiro o osso, depois o plano (com o shift pressionado) e em seguida clique em Cut Boolean.

Importante

Para garantir um bom funcionamento dos manipuladores visuais, utilize o Pivot na opção Median Point.

Dica

Use o Clipping Border (Alt + B) quando for posicionar o plano de corte da maxila, de modo a visualizar apenas a área de interesse.

Aviso

Os planos de corte inseridos são posicionados de modo a facilitar o trabalho do usuário e não para fazê-o de forma automática. Sendo assim, depois de inserir os planos automaticamente será necessário melhorar o seu posicionamento.

MANUAL

Permite ao usuário inserir manualmente os planos de corte.

Chin Plane: Cria um plano de corte horizontal na região do mento.

Left Ramus Plane e Right Ramus Plane: Cria planos de cortes verticais nas regiões do ramo da mandíbula.

Maxilla Plane: Cria um plano de corte horizontal dividido em duas partes ligeiramente inclinadas na região da maxila.

BOOLEAN

Permite ao usuário fazer osteotomias digitais por projeção de desenho. Para tal:

  1. Selecione o osso desejado e observe-o em Orthographic pelo ponto de vista cujo o corte será projetado.

  2. Desenhe o corte desejado com o botão Draw Line. É imprescindível que o desenho conte com uma pequena espessura, caso contrário o boolean não vai funcionar.

  3. Para efeturar o corte utilize o botão Subtract IN.

DRAW

Oferece uma opção simples e direta de corte por desenho. Para tal:

  1. Selecione o objeto a ser cortado.

  2. Clique em Draw Surface Line, desenhe a linha de corte sobre o objeto e clique em ENTER.

  3. Clique em View Cut Line para visualizar a linha de corte e alterá-la, se necessário.

  4. Clique em Cut Visible Line! Para gerar o corte.

Importante

Os objetos originais, bem como o plano de corte resultante do desenho da linha serão enviados para a coleção Copied_Objects.

Dynamic

Nesta seção o usuário encontrará as ferramentas de configuração das osteotomias e deformação do tecido mole que estão divididas em: DEFAULT, NOSE EXP. e EXPERIMENTAL SLICES.

DEFAULT

Depois de cortar os ossos usando a osteotomia padrão (de quatro cortes), o usuário precisará:

  1. Selecionar as peças e clicar em Setup Osteotomy Auto de modo a pigmentá-las e renomeá-las conforme as suas posições.

  2. Selecionar a porção frontal da face e clicar em Setup Soft Tissue Dynamics para que os ossos irradiem as regiões de deformação que incidirão na malha da face. Após esse comando ao movimentar as osteotomias ele deformará a pele do paciente virtual.

Para visualizar os detalhes internos ou mesmo fazer cortes tridimensionais da estrutura, recorre-se ao botão Clipping Border.

Se o usuário adicionou pontos anatômicos e pretende parenteá-los às malhas próximas de modo a acompanhar a sua dinâmica, basta clicar em Parent Points.

NOSE EXP.

Nesta seção trabalha-se da mesma forma apresentada no DEFAULT, mas com a adição de alguns pontos anatômicos de modo a permitir a deformação do nariz:

  1. Distribua os pontos de Anatomical Points ao longo do tecido mole.

  2. Selecione as osteotomias e clique em Setup Osteotomy Auto.

  3. Selecione a malha da face e clique em Setup Soft Tissue Dynamics.

Se o usuário adicionou pontos anatômicos e pretende parenteá-los às malhas próximas de modo a acompanhar a sua dinâmica, basta clicar em Parent Points.

EXPERIMENTAL SLICES

Diferente da configuração apresentada em Soft Tissue esta seção aceita um número ilimitado de osteotomias. Para fazer a sua projeção no tecido mole o usuário deverá:

  1. Selecionar a malha relacionada a face e clicar em Set Face and Hide.

  2. Selecionar as malhas relacionadas as osteotomias e clicar em Setup Auto!

Se o usuário adicionou pontos anatômicos e pretende parenteá-los às malhas próximas de modo a acompanhar a sua dinâmica, basta clicar em Parent Points.

Ao clicar em Save será gerado o seguinte arquivo: Dynamic-John_Simpson.blend.

Kinematic

É nesta seção que os trabalhos de planejamento cinemático acontecem, ou seja, o deslocamento e rotação das osteotomiasgravadas no tempo.

Vertical Measurements

Uma vez que os pontos anatômicos foram inseridos, o usuário clicará em Create Vertical Measurements. Uma linha horizontal será criada na origem na cena (0,0,0) e uma série de cotas verticais brotarão dos dentes 11, 21, 23, 13, 16 e 26 até a linha criada.

Para ocultar/mostrar as cotas, basta clicar em Show/Hide Measurements.

Importante

Para que a visualização dos pontos e deslocamentos funcione corretamente é imprescindível parentear os pontos anatômicos em Parent Points!

Controllers

Responsável pela cinemática do pré e pós-operatório digital, esta seção permitirá ao usuário controlar todos os fatores relacionados ao tempo e espaço, podendo organizar as osteotomias nas posições iniciais clicando em Start e nas finais (pós) ao clicar em End.

Também pode-se ministrar a movimentação visual clicando no play ou retroceder ao início clicando no play reverso.

Para criar quadros-chaves de uma osteotomia, é necessário que o usuário:

  1. Posicione o quadro desejado na Timeline.

  2. Selecione a osteotomia.

  3. Faça as modificações necessárias.

  4. Clique no ícone da câmera para gravar as transformações.

Mandible Collision

Estas ferramentas simulam a colisão dos dentes utilizando como referência uma gravidade inversa. Para tal:

  1. Configure a posição da maxilla na seção Vertical Measurements.

  2. Clique em Prepares Maxilla & Mandible. O comando ocultará as osteotomias originais criando cópias estáticas.

  3. Se necessário faça um pré-alinhamento do corpo da mandibula, em seguida clique em Solve Collision Inverted e aguarde até a simulação começar. Se a simulação não for bem sucedida, reposicione a mandíbula e repita a operação.

  4. Clique em Contact Color e aguarde até que seja apresentada a coloração de colisão.

  5. Se tudo correr bem, pressione ESC para parar a animação e clique em Apply!!!

Piggyback

Esta seção oferece ao usuário a possibilidade de parentear (piggyback) e desparentear objetos, bastando selecionar os mesmos e clicar na opção desejada. Onde primeiro seleciona(m)-se o(s) filho(s) e por último o pai.

Capturing

Assim que a cinemática for definida, basta clicar em Generate Data Action para gerar a tabela de deslocamento dos pontos anatômicos que será apresentada na saída do Terminal.

Spreadsheet

Se o usuário deseja gerar uma planilha .CSV de toda a cinemática envolvida (osteotomias e cefalometria), basta clicar em GENERATE REPORT. O add-on chamará o explorador de arquivo e o LibreOffice para abrir a planilha. Se o usuário não dispor do software, poderá então abrir o arquivo manualmente pelo explorador que já apresentará o diretório exportado.

Ao clicar em Save será gerado o seguinte arquivo: Kinematic-John_Simpson.blend.

Close Lips

Caso o usuário deseje fazer alguma intervenção manual, como o fechamentos dos lábios ele pode recorrer a esta seção. Para tal:

  1. Selecione a face e clique em Create Shape Keys.

  2. Use as opções de escultura digital disponíveis e feche os lábios.

  3. Assim que o trabalho estiver finalizado, clique em OK! (Object Mode).

O usuário pode alternar entre a malha original e pós-escultura mudando o valor de Value entre 0 e 1. Onde 0 é o estado inicial e 1 o final pós-escultura.

Guide and Splint Creation

_images/20190716_1.jpg

Órtese de braço criada por desenho sobre a malha.

Free Draw Solid

Permite o desenho a mão livre de guias e objetos sobre a malha. Para tal:

  1. Selecione a malha desejada.

  2. Clique em Draw Surface Line, desenhe a linha correspondente ao objeto desejado e em seguida pressione ENTER.

  3. Clique em Create Solid by Line e o objeto será criado sobre a malha.

Dica

Para engrossar ou afinar o objeto criado: 1) Entre em modo de edição, 2) Selecione todos os vértices com a tecla A e 3) Use o comando ALT+S aproximando ou distanciando o mouse.

Draw Line Tube

Permite a criação de guia ou objetos baseado em spline na forma de tubo.

  1. Selecione o objeto onde os pontos serão posicionados.

  2. Clique em Create Points e vá clicando sobre a região que pretende cortar.

  3. Assim que finalizar o desenho clique no botão direito do mouse ou no ESC.

  4. Clique em Create Bezier Volume e o objeto será criado sobre a malha.

Dica

O usuário pode engrossar ou afinar o nó do bézier selecionando um ou mais deles e clicando em ALT+S.

Aviso

Não se esqueça de clicar no ESC após criar os pontos desejados, caso contrário o programa continuará criando pontos em todos os lugares onde o usuário clicar no botão esquerdo do mouse!

Boolean

  • Difference: Calcula Objeto 1 - Objeto 2 (A-B) ou Objeto 2 - Objeto 1 (B-A).

  • Union: Unifica A+B ou B+A.

  • Intersect: Gera um malha da intersecção de A e B.

  • MULTIPLE UNION: Unifica malhas sem limite de objetos: A+B+C+D+E…

Boolean Segmentation

Em Boolean Segmentation o usuário pode fazer um desenho de corte no botão Draw Line e escolher se deseja apagar a área dentro do desenho (Subtract IN) ou fora dele (Subtract OUT).

Sculpture

Nesta seção o usuário pode lançar mão das ferramentas de escultura para corrigir os splints e guias de corte.

Splint

Uma vez que os pontos já estão posicionados nas arcadas superior e inferior e foram parenteados, o usuário pode criar as posições das osteotomias para a geração dos splints intermediário e final clicando em Maxilla-Origin Mandible-Final.

O usuário poderá corrigir manualmente a posição da mandíbula de modo que os dentes não se toquem e usar as ferramentas de cinemática para gravar os deslocamentos e rotações.

Assim que os quadros-chaves forem definidos, basta posicionar o marcador naquele desejado e clicar em Create Splint para que o splint seja gerado automaticamente tomando como referência os pontos anatômicos previamente colocados e parenteados.

O splint criado é apenas um elementos com espessura, mas não sulcado pelos dentes. Para proceder com a booleana clique em Boolean Difference.

Analise o splint e veja se tudo está correto, se sim, clique em View Maxilla & Mandible para visualizar as estruturas novamente.

Collision Test

Esta seção é útil para testar a retentividade de guias e splints, bem como a colisão de modelos de dentes.

_images/20190712_4.png

Collision Test: Contact Color.

Uma vez que o usuário definiu os dois objetos que serão usados na simulação, bem como se a gravidade for normal (DEFAULT) ou invertida (INVERTED), basta seguir os passos:

  1. Selecione o dois objetos e clique em Solve Collision. Se o encaixe não ficar bom, basta mover as peças e repetir o processo até ficar do agrado do usuário.

  2. Assim que o posicionamento for definido é possível ver o mapa de cor de aproximação clicando em Contact Color. O processo costuma demorar de alguns segundos a alguns minutos, dependendo das configurações do computador.

  3. Se tudo deu certo, basta clicar em ESC e, em seguida, no botão Apply! para posicionar as peças na posição final de colisão.

Finishing

Depois de finalizar o processo de planejamento o usuário encontrará nesta seção as ferramentas de preparação para a impressão 3D das peças resultantas.

Para prepara a peça para impressão 3D:

  1. Selecione o objeto e clique em Prepares 3D Printing.

  2. Assim que preparada a peça pode ser exportada em Export STL.

Ao clicar em Save será gerado o seguinte arquivo: Guide-John_Simpson.blend.