IBCBiomech / insolesibc

Prototipo de aplicación para plantillas
0 stars 1 forks source link

Desarrollo de nuevo Heatmap #51

Open ivanjimenez opened 11 months ago

ivanjimenez commented 11 months ago

Iván:

Bernat:

Después del resultado se probarán otros sensores e incluso la agrupación de sensores.

bernatDiaz commented 11 months ago

No me quedan tareas. Quieres que me mire yo lo del gausiano?

ivanjimenez commented 11 months ago

En primer lugar se está trabajando en dos enfoques que es lo que convenimos:

1 - El primero cuyo proyecto está en WPHeatMap es pintar en el canvas. Es más simple implementarlo.

Image

2 - El segundo es incluso crear interpolación gaussiana en 3d. EL motor gráfico utilizado es hellix y es libre de usar. Es mucho mejor el rendimiento en el pintado.

Image

Image

Trabajo en la matriz, puesto que los sensores son pocos, hay que conseguir la región interpolada.

ivanjimenez commented 10 months ago

Hay dos repositorios en lo que tienes acceso para revisarlos.

1- https://github.com/IBCBio/HeatMap 2- https://github.com/IBCBio/WPFHeatMap

Los dos pintan con coordenadas.

bernatDiaz commented 10 months ago

Estaba mal esa imagen, la correcta es esta para el primer frame image

bernatDiaz commented 10 months ago

https://github.com/IBCBio/insolesibc/assets/18369978/8de5ac81-d4f6-4f13-94d0-45b7c2d93f2c

bernatDiaz commented 10 months ago

Desactivando el GRF y mariposa va bien a tiempo real

https://github.com/IBCBio/insolesibc/assets/18369978/b45601aa-4ee7-4dce-9832-66df1b647200

ivanjimenez commented 10 months ago

Desactivándolos quieres decir no cargánadolos?

Lo que sí, al ser un punto, creo, la imagen del degradado gausiano es redonda. Una forma de mejorarlo sería por ejemplo pintando cuatro puntos alrededor por ejemplo del punto del sensor que tengan el mismo valor del sensor. A ver cómo quedaría.

También quiero que se utilice la otra versión, puedes hacer la misma prueba?

bernatDiaz commented 10 months ago

Aplicando un mapa de transparencias por encima para que las presiones no se salgan fuera

https://github.com/IBCBio/insolesibc/assets/18369978/09e9f47f-0518-43fd-a398-a567e1a844ea

bernatDiaz commented 10 months ago

Con cuatro puntos por cada uno. No los puedo poner mas separados porque sino cuando hay poca presion no se juntan y quedan 4 puntos separados.

https://github.com/IBCBio/insolesibc/assets/18369978/a03ddac7-2159-4946-9e33-bacf6711e138

ivanjimenez commented 10 months ago

Desactivando el GRF y mariposa va bien a tiempo real

MainWindow.2023-10-25.10-56-06.mp4

Para que se vean mejor tendría que haber una distribución más amplia, pero eso se conseguiría con más senores, con esta resolución hay que tirar por interpolaciones. Y eso también dejaría de ser tan realista.

Puedes probar el otro ejemplo el del heatmap, a ver cómo queda? Gracias

bernatDiaz commented 10 months ago

Sale solo una montaña

https://github.com/IBCBio/insolesibc/assets/18369978/be80f5b5-7bf6-4036-8689-f690cac8631b

bernatDiaz commented 10 months ago

Cambiando el kernel sale bien

https://github.com/IBCBio/insolesibc/assets/18369978/f3ac23f7-7312-455d-801c-6027953d4ca6

bernatDiaz commented 10 months ago

Usando otra vez el mapa de transparencias para que no dibuje fuera de la plantilla

https://github.com/IBCBio/insolesibc/assets/18369978/407a80ad-bbf0-4171-8764-b6b41c9c96d6

ivanjimenez commented 10 months ago

Eso te iba a decir.

No queda nada mal. De hecho el de ayer tampoco estuvo mal. Tal vez veo este mejor porque no es tan redondo el gaussiano.

Funciona sin el butterfly y grf desactivados?

Podrías cambiar la intensidad del color, se ve muy claro.

ivanjimenez commented 10 months ago

El video está sincronizado, puedes usar la animación en tiempo real offline, me refiero.

ivanjimenez commented 10 months ago

Buen trabajo, Bernat!! Great Job!!

bernatDiaz commented 10 months ago

Con el Butterfly funciona. Con el GRF no. Hay algun error en el GRF que se esta actualizando demasiadas veces

bernatDiaz commented 10 months ago

Subiendo la intensidad veo el color mas o menos igual. Esto es 0-100 y antes estaba a 0-10

https://github.com/IBCBio/insolesibc/assets/18369978/378b21c8-b745-4b34-9934-077e20b088a0

ivanjimenez commented 10 months ago

Subiendo la intensidad veo el color mas o menos igual. Esto es 0-100 y antes estaba a 0-10

MainWindow.2023-10-26.14-06-59.mp4

Mmm, puede ser que haya alguna opacidad en algún lado?

bernatDiaz commented 10 months ago

Pinto otra imagen por encima para que no se salga del pie pero en la parte del pie la alpha es 0

ivanjimenez commented 10 months ago

Pinto otra imagen por encima para que no se salga del pie pero en la parte del pie la alpha es 0

Si, aunque no pintes la imagen sale igual sin intensidad, verdad?

bernatDiaz commented 10 months ago

Si, es esta https://github.com/IBCBio/insolesibc/issues/51#issuecomment-1780937884

ivanjimenez commented 10 months ago

Bueno, mañana sigues, no te preocupes. Ya se sacará mejor.

bernatDiaz commented 10 months ago

Era por las alphas del colormap del fichero HeatMapImage.cs

https://github.com/IBCBio/insolesibc/assets/18369978/5de7bf7e-1b35-4f8e-8fde-c62c933d0692

bernatDiaz commented 10 months ago

Solucionado lo del GRF. El problema era que se actualizaba segun un cambio minimo en el eje X. Aqui habia un problema con compatibilizar el play y la flecha derecha. Lo que he hecho es actualizar segun el tiempo que ha pasado desde la ultima actualizacion.

ivanjimenez commented 10 months ago

Solucionado lo del GRF. El problema era que se actualizaba segun un cambio minimo en el eje X. Aqui habia un problema con compatibilizar el play y la flecha derecha. Lo que he hecho es actualizar segun el tiempo que ha pasado desde la ultima actualizacion.

Vale, perfecto. De momento nos quedamos con éste. Si te viene bien ahora hablar para coordinarnos?

ivanjimenez commented 10 months ago

Un segundo. Está implementado la sincronización por rango de tiempo? El Max y el Min? Si no, realízalo primero, por favor. Gracias

bernatDiaz commented 10 months ago

Quieres decir que haga lo de Max, Min y Avg en el que ha salido del HeatMap?

ivanjimenez commented 10 months ago

Sí, eso. Supongo que habrá ya una función que calcule max/min/avg de cada sensor. Si no, pues las tendrías que implementar. Coméntame si te sirve código anterior.

bernatDiaz commented 10 months ago

Si, puedo copiarlo del heatmap antiguo

ivanjimenez commented 10 months ago

Eso, pues ya está.

bernatDiaz commented 10 months ago

Hecho. Hay un pequeño bug que cuando cargas el test no se carga la imagen hasta que no realizas alguna modificacion, no se que pasa despues va perfecto

ivanjimenez commented 10 months ago

haz un merge con mvvm si no lo has hecho ya, Gracias!

bernatDiaz commented 10 months ago

He solucionado el bug quitandolo fuera del codigo async. Parece con no funciona con tareas. He leido por ahí y puede ser que sea por el codigo unsafe