Shapeworks: El modelo resultante de elipsoide es malo

Creado en 3 mar. 2021  ·  32Comentarios  ·  Fuente: SCIInstitute/ShapeWorks

Todos 32 comentarios

Se me ocurre que el conjunto de datos del elipsoide ha cambiado. ¿Alguien puede explicar la diferencia entre "v0" y "v1"? ShapeWorks 5.5 no funciona mejor en el conjunto de datos / parámetros del elipsoide actual. @sheryjoe @ jadie1 @ iyerkrithika21

@akenmorris "v1" son los conjuntos de datos elipsoides no arreglados generados usando ShapeCohortGenPackage. Incluye todos los siguientes modos de variaciones y opciones para generaciones:

  1. radios aleatorios
  2. orientación aleatoria
  3. algunas segmentaciones que tocan fronteras
  4. centros aleatorizados
  5. aleatorizar el tamaño de las imágenes para incluir más fondo

Mientras que el antiguo conjunto de datos tenía solo un modo de variación, supongo. @ jadie1 ,

@ jadie1 Acordamos antes que proporcionaremos dos conjuntos de datos elipsoides, uno alineado (similar a v0) y otro no alineado (para demostrar la preparación). Creo que v1 es el último.

Sí, ellipsoid-v1 es como lo describió
También agregamos ellipsoid_aligned-v1 que se generó usando el código de generación de cohortes como ellipsoid-v1 pero ya está alineado (el centro, la orientación y el tamaño de la imagen son los mismos). La diferencia entre ellipsoid-v0 y ellipsoid_aligned-v1 es que ellipsoid-v0 solo tiene un modo de variación, mientras que ellipsoid_aligned-v1 varía a lo largo de todos los radios.

Sí, ellipsoid-v1 es como lo describió

¿Por qué la v1 debería tener más modos? El caso de uso de estos datos debe excluir los modos relacionados con la desalineación.

También agregamos ellipsoid_aligned-v1 que se generó usando el código de generación de cohortes como ellipsoid-v1 pero ya está alineado (el centro, la orientación y el tamaño de la imagen son los mismos). La diferencia entre ellipsoid-v0 y ellipsoid_aligned-v1 es que ellipsoid-v0 solo tiene un modo de variación, mientras que ellipsoid_aligned-v1 varía a lo largo de todos los radios.

Esto se está volviendo un poco confuso. ¿Necesitamos mantener dos datos ellispoides alineados, uno con un modo y el otro con tres modos? Creo que el alineado solo debería tener un modo (elija un radio para variar) ya que se supone que este es el ejemplo de juguete más simple para la optimización.

Independientemente de la alineación o el número de modos de variación, este conjunto de parámetros muestra una correspondencia y un muestreo deficientes:

image

Sí, ellipsoid-v1 es como lo describió

¿Por qué la v1 debería tener más modos? El caso de uso de estos datos debe excluir los modos relacionados con la desalineación.

Debido a que el radio varía a lo largo de los tres ejes, debería haber más modos de variación, ¿verdad?

También agregamos ellipsoid_aligned-v1 que se generó usando el código de generación de cohortes como ellipsoid-v1 pero ya está alineado (el centro, la orientación y el tamaño de la imagen son los mismos). La diferencia entre ellipsoid-v0 y ellipsoid_aligned-v1 es que ellipsoid-v0 solo tiene un modo de variación, mientras que ellipsoid_aligned-v1 varía a lo largo de todos los radios.

Esto se está volviendo un poco confuso. ¿Necesitamos mantener dos datos ellispoides alineados, uno con un modo y el otro con tres modos? Creo que el alineado solo debería tener un modo (elija un radio para variar) ya que se supone que este es el ejemplo de juguete más simple para la optimización.

Puedo eliminar ellipsoid_aligned-v1 o ellipsoid-v0. No tenemos casos de uso que usen ambos, solo dejé ellpsoid-v0 para los usuarios que usan versiones anteriores de ShapeWorks. Esta fue la solicitud original para crear ellpsoid_aligned-v1: "¿Podemos regenerar v0 usando el mismo código que v1 deshabilitando todas las transformaciones? De esta manera mantenemos la consistencia y tenemos segmentaciones y buenas mallas para probar tanto para dominios fijos como para planos de corte".

No estoy seguro de por qué el modelo tiene una correspondencia deficiente. Supongo que es necesario volver a ajustar los parámetros. ¿Debería probar con nuevos elipsoides que solo varían a lo largo de un radio?

El aseo también tiene problemas:

image

Observe que el elipsoide 9 ni siquiera está centrado con los demás.

¿Es esto un problema en el ejemplo del elipsoide o en la biblioteca de imágenes? @cchriste @archanasri @ jadie1 @ iyerkrithika21

Así es como me ven los elipsoides arreglados en Windows y Linux.
El elipsoide 9 parece centrado para mí.

image

También me parece centrado en mí, simplemente lo ejecuté de nuevo en la rama release_v6.0
image

Sin embargo, los puntos de correspondencia tampoco se ven muy bien para mí, ¿tal vez necesite más suavizado? Para mí, parece que hay cuatro modos de variación: el primero es el tamaño y los tres siguientes son radios en la dirección x, y, z.

@ jadie1 , @ iyerkrithika21 , acabo de probar en una Mac diferente, una nueva instalación de shape funciona 6.0 RC5, nuevas instalaciones de conda, todo. Mire la alineación de las muestras (no es necesario ni siquiera mirar los DT):

https://user-images.githubusercontent.com/1693349/110035220-9c3e6300-7cf8-11eb-9cd0-9162212dd61c.mp4

Oh, ja , @ iyerkrithika21 , debe desactivar la casilla de verificación center en Studio o los centrará automáticamente para que los muestre. Inspeccione de nuevo con el centrado.

Oh, sí, lo veo ahora. Acabo de ejecutar Getting-started-with-grooming-segmentations.ipynb que usa los mismos datos y me parece que tiene el mismo problema pero no tan malo. Vea el último video aquí: http://sciinstitute.github.io/ShapeWorks/notebooks/getting-started-with-grooming-segmentations.html (este video coincide con lo que acabo de ejecutar en la rama de lanzamiento).

Supongo que podríamos revisar el caso de uso y el cuaderno línea por línea y ver dónde difiere el arreglo ...

Tenga en cuenta que el portátil y las transformaciones de distancia del caso de uso tienen el mismo problema de centro / alineación. Las transformaciones de distancia desde el portátil son más suaves.
@akenmorris , ¿cree que el descentrado puede estar sucediendo porque hay una gran cantidad de variación en el conjunto de datos (tamaño, orientación, radios, etc.)?

¿Están alineados con ICP?

Sí, la referencia es elipsoide_14.

Entonces, ¿crees que termina alineando el elipsoide 9 a lo largo de un solo lado?

No estoy seguro de cómo deberíamos abordar esto. Después de ICP, ¿debería aplicarse un centro de operaciones de masa?

@sheryjoe ¿

@akenmorris ¿ qué traducción? No puedo ver esto en el video. ¿Controlaste el paso de alineación del centro de masa? Además, el número de iteraciones de ICP podría importar en algunos casos.

Los elipsoides no están centrados, por lo que necesariamente el modelo de forma captura la traslación.

Los elipsoides no están centrados, por lo que necesariamente el modelo de forma captura la traslación.

COM debería centrarlos.

COM debería centrarlos.

Estoy de acuerdo, pero ¿ICP los está descentrando para que coincidan con un lado?

COM debería centrarlos.

Estoy de acuerdo, pero ¿ICP los está descentrando para que coincidan con un lado?

El impacto de ICP debe ser mínimo en la traducción wrt después de COM, a menos que la referencia no sea realmente una forma mediana.

¿Cuál es el estado aquí? ¿Alguien está trabajando en esto? Creo que hay dos problemas separados, la preparación y luego los parámetros de optimización.

@ jadie1 @ iyerkrithika21 ¿ alguna actualización?

Cuando preparé las segmentaciones en Studio, los DT se ven de esta manera:
image
Entonces, parece que la ICP podría estar causando algunos problemas en el aseo.

Correcto. El elipsoide 9 está centrado antes:

       """ Apply rigid alignment """
        ref = FindReferenceImage(comFiles)
        alignedFiles = applyRigidAlignment(groomDir + "aligned/segmentations", ref, comFiles)

Y después, se descentra:

image

@akenmorris cuando intento optimizar los elipsoides en Studio sin ICP,
image
Probé 3 niveles diferentes de acolchado: 10,30,50. Pero ninguno de estos ayudó.
Y también en el caso de uso de Python, intenté omitir el paso rigidAlignment y obtengo este error de cuadro delimitador.

############## Cropping ##############
Traceback (most recent call last):
  File "RunUseCase.py", line 94, in <module>
    module.Run_Pipeline(args)
  File "/home/sci/iyerkrithika/ShapeWorks/Examples/Python/ellipsoid.py", line 96, in Run_Pipeline
    croppedFiles = applyCropping(groomDir + "cropped/segmentations", comFiles, comFiles)
  File "/home/sci/iyerkrithika/ShapeWorks/Examples/Python/GroomUtils.py", line 216, in applyCropping
    region = ImageUtils.boundingBox(bbDataList)
ValueError: Image sizes do not match (Output/ellipsoid/groomed/com_aligned/segmentations/ellipsoid_01.isores.center.com.nrrd)

Este error no tiene sentido porque ImageUtils.boundingBox() debería poder dar el cuadro delimitador más grande.
@ jadie1 , ¿cree que esto podría estar relacionado con el problema que vimos en el caso de uso del fémur?

@ iyerkrithika21 , ¿puedes contarme más sobre cómo los estás ejecutando en el estudio? Si tuviera que adivinar en función de los nombres de archivo en las esquinas, ¿tal vez importó las segmentaciones binarias, omitió la preparación y hizo clic en ejecutar? Deben ser transformaciones de distancia.

@ iyerkrithika21 , ¿puedes contarme más sobre cómo los estás ejecutando en el estudio? Si tuviera que adivinar en función de los nombres de archivo en las esquinas, ¿tal vez importó las segmentaciones binarias, omitió la preparación y hizo clic en ejecutar? Deben ser transformaciones de distancia.

Importé las segmentaciones, dirigí al novio en el estudio. y luego hizo clic en optimizar.

Se solucionará para su lanzamiento a través del número 1133.

@ iyerkrithika21 , agregué un problema para lo que viste:

1134

¿Fue útil esta página
0 / 5 - 0 calificaciones