Wolfram Language

Reconstruction 3D par focus stacking

Les microscopes ont une faible profondeur de champ. Les éléments de l'image situés devant ou derrière le plan focal perdent rapidement la mise au point et sont flous.

L'empilage de mises au point (focus stacking) est une technique de traitement d'images permettant de combiner un ensemble d'images avec des longueurs focales différentes en une seule image. Pour cela, des zones non focalisées sont collectées sélectivement à partir de chaque image de l'ensemble.

La fonction intégrée ImageFocusCombine accomplit exactement cette tâche.

De plus, il est possible d'obtenir une carte de profondeur pour chaque élément mis au point et, par conséquent, pour les pixels correspondants qui se trouvent dans l'image. La carte de profondeur qui en résulte, combinée à l'image originale, fournit une reconstruction 3D de l'échantillon vu au microscope.

Prenez la norme du filtre laplacien comme indicateur de la mise au point ou de l'absence de mises au point d'un pixel. Le filtre laplacien détecte les coefficients de Fourier élevés, qui sont d'abord atténués si une image n'est pas nette.

Ensuite, pour chaque pixel, choisissez la couche qui présente la plus grande norme de filtrage laplacienne.

Multipliez le volume binaire obtenu par l'empilement focal et ajoutez toutes les couches. Ainsi, vous ne recueillez que les valeurs de pixels qui sont mises au point.

Le volume binaire depthVol contient les informations de profondeur de chaque pixel. Convertissez-le en une carte de profondeur bidimensionnelle.

L'information de profondeur contient beaucoup de bruit et n'est pas aussi fiable pour tous les emplacements de pixels. Seuls les bords indiquent clairement si une zone de l'image est nette ou non. Ainsi, utilisez le focusResponses total comme mesure de confiance pour la carte de profondeur.

Ne prenez en compte que les mesures de profondeur avec une confiance supérieure à 0,05.

Vous pouvez régulariser les valeurs de profondeur en utilisant MedianFilter et combler les vides avec FillingTransform.

Affichez la carte de profondeur en 3D en utilisant l'image mise au point comme texture.

Exemples connexes

de en es ja ko pt-br zh