C'est un peu différent tout de même. Dans ce que tu fais tu définis une grille de type différence finies à la taille du pixel, et tu régularises en pénalisant une énergie de type laplacien du déplacement, ce qui évites d'avoir des fortes variations du déplacement. Nous avons implémenté un technique basée sur les éléments finis, qui assure une interpolation bilinéaire par élément avec une grille de taille allant de 16x16 à 64x64 (en général), il y a dans ce cas moins besoin de pénaliser l’énergie associée à l'image.
Pour expliquer un peu le problème de manière plus générale, associer déplacement et images est un thème abordé par plusieurs communautés.
Les pionnier sont la mécanique des fluide avec la Particule Image Velocimetry :
Il s'agit d'observer des particules et de prendre deux images successives à des temps très courts. La technique classique consiste à prendre des petites fenêtres et à chaque fenêtre rechercher le déplacement de corps rigide qui entraîne la meilleur corrélation entre les deux imagettes. Comme le déplacement est pris entre deux temps très courts on peut avoir une image fidèle de la vitesse. On notera le logiciel libre osiv http://osiv.sourceforge.net/ ainsi que jpiv http://www.jpiv.vennemann-online.de/ qui répondent à cette problématique
On appelle cette méthode en mécanique des solides déformables, Digital Images Correlation. La différence principale vient du fait que les images sont prises avec des temps plus grands entre deux images successives. On a donc des déplacements. Beaucoup de techniques sont identiques à celles de la PIV. On ne s’intéresse toujours pas au recalage entre l'image initiale et l'image finale. Il n'existe pas chez nous de Logiciels Libre pour répondre à ce besoin, mais ceux de la PIV fonctionnent bien.
A noter que les techniques utilisant le flot optique sont aussi couramment utilisées sur des imagettes, il existe une communauté en analyse d'images qui utilise massivement ces méthodes, on peut se référer à l'implémentation de l'algorithme de Lucas-Kanade dans OpenCV (https://code.ros.org/trac/opencv/browser/trunk/opencv/samples/c/lkdemo.c?rev=1429) pour plus de détails.
Il y a eu en 2006 l'apparition de méthodes appelées globales, qui sont celles que j'ai expliqué au début. Dans ces méthodes on recale l'image finale sur l'image initiale. Elles sont également basées sur le flot optique, mais c'est sur toute l'image que s'opère la minimisation et non sur une imagette.
Dans la communauté d'imagerie médicale, il existe depuis bien plus longtemps (1995) des techniques appelées Image Registration (ou recalage d'images), qui cherchent à rendre le plus semblables possible deux images en déformant l'image finale. Il y a plusieurs catégories, le recalage rigide, on l'on cherche à trouver la meilleurs translations et rotations (en 2D ou 3D) le recalage par similarité (on cherche le grossissement en +), il y a ensuite ce qui s'appelle le recalage déformable ou élastique. Il existe beaucoup de logiciels libres permettant de faire du recalage d'images, le plus complet est elastix (http://elastix.isi.uu.nl/) là où nous utilisons une base élément finis pour les déplacements ils utilisent des BSplines. Il existe également plastimatch (http://plastimatch.org/) qui a moins d'options que elastix ne fonctionne qu'en 3D mais est massivement // peut faire du OpenMP ou du Cuda ce qui le rend dans ce contexte très intéressant.
De notre cotés nous essayons de développer une plate-forme permettant de balayer tout ces domaines avec la contrainte de tout penser pour que ce soit massivement // du fait de l'arrivée prochaine d'un μtomographe qui nous permettra d'avoir ds images de 20003 ce qui est infaisable aujourd'hui sur un laptop. et prend beaucoup de temps sur des machines performantes ou des HPC si ce n'est pas parallélisé.
Je rebondirais également sur l’aspect données, nous essayons également de travailler le plus possible avec netCDF car il permet d'avoir des données pérennes d'acceder aux fichiers en // et de stocker beaucoup plus que des pixels.
[^] # Re: PIV
Posté par freejeff . En réponse à la dépêche G’MIC Online, le traitement d’image en ligne. Évalué à 6.
C'est un peu différent tout de même. Dans ce que tu fais tu définis une grille de type différence finies à la taille du pixel, et tu régularises en pénalisant une énergie de type laplacien du déplacement, ce qui évites d'avoir des fortes variations du déplacement. Nous avons implémenté un technique basée sur les éléments finis, qui assure une interpolation bilinéaire par élément avec une grille de taille allant de 16x16 à 64x64 (en général), il y a dans ce cas moins besoin de pénaliser l’énergie associée à l'image.
Pour expliquer un peu le problème de manière plus générale, associer déplacement et images est un thème abordé par plusieurs communautés.
Les pionnier sont la mécanique des fluide avec la Particule Image Velocimetry :
Il s'agit d'observer des particules et de prendre deux images successives à des temps très courts. La technique classique consiste à prendre des petites fenêtres et à chaque fenêtre rechercher le déplacement de corps rigide qui entraîne la meilleur corrélation entre les deux imagettes. Comme le déplacement est pris entre deux temps très courts on peut avoir une image fidèle de la vitesse. On notera le logiciel libre osiv http://osiv.sourceforge.net/ ainsi que jpiv http://www.jpiv.vennemann-online.de/ qui répondent à cette problématique
On appelle cette méthode en mécanique des solides déformables, Digital Images Correlation. La différence principale vient du fait que les images sont prises avec des temps plus grands entre deux images successives. On a donc des déplacements. Beaucoup de techniques sont identiques à celles de la PIV. On ne s’intéresse toujours pas au recalage entre l'image initiale et l'image finale. Il n'existe pas chez nous de Logiciels Libre pour répondre à ce besoin, mais ceux de la PIV fonctionnent bien.
A noter que les techniques utilisant le flot optique sont aussi couramment utilisées sur des imagettes, il existe une communauté en analyse d'images qui utilise massivement ces méthodes, on peut se référer à l'implémentation de l'algorithme de Lucas-Kanade dans OpenCV (https://code.ros.org/trac/opencv/browser/trunk/opencv/samples/c/lkdemo.c?rev=1429) pour plus de détails.
Il y a eu en 2006 l'apparition de méthodes appelées globales, qui sont celles que j'ai expliqué au début. Dans ces méthodes on recale l'image finale sur l'image initiale. Elles sont également basées sur le flot optique, mais c'est sur toute l'image que s'opère la minimisation et non sur une imagette.
Dans la communauté d'imagerie médicale, il existe depuis bien plus longtemps (1995) des techniques appelées Image Registration (ou recalage d'images), qui cherchent à rendre le plus semblables possible deux images en déformant l'image finale. Il y a plusieurs catégories, le recalage rigide, on l'on cherche à trouver la meilleurs translations et rotations (en 2D ou 3D) le recalage par similarité (on cherche le grossissement en +), il y a ensuite ce qui s'appelle le recalage déformable ou élastique. Il existe beaucoup de logiciels libres permettant de faire du recalage d'images, le plus complet est elastix (http://elastix.isi.uu.nl/) là où nous utilisons une base élément finis pour les déplacements ils utilisent des BSplines. Il existe également plastimatch (http://plastimatch.org/) qui a moins d'options que elastix ne fonctionne qu'en 3D mais est massivement // peut faire du OpenMP ou du Cuda ce qui le rend dans ce contexte très intéressant.
De notre cotés nous essayons de développer une plate-forme permettant de balayer tout ces domaines avec la contrainte de tout penser pour que ce soit massivement // du fait de l'arrivée prochaine d'un μtomographe qui nous permettra d'avoir ds images de 20003 ce qui est infaisable aujourd'hui sur un laptop. et prend beaucoup de temps sur des machines performantes ou des HPC si ce n'est pas parallélisé.
Je rebondirais également sur l’aspect données, nous essayons également de travailler le plus possible avec netCDF car il permet d'avoir des données pérennes d'acceder aux fichiers en // et de stocker beaucoup plus que des pixels.