Décidément, le refocusing est à la mode. Après Nokia, c'est au tour de Google de proposer la même fonctionnalité en natif avec la mise à jour de son application Camera pour Android. Même si dans l'idée les deux fonctionnalités sont similaires, l'approche de Google est totalement différente de celle de Nokia. Petit focus sur deux approches de refocus...
Keyword - refocus
4 novembre 2013
Nokia Refocus : un Lytro cheap en focus stacking
Par Deeder le 4 novembre 2013, 09:22 - Photo
Nokia a fait le buzz en présentant la semaine dernière son appli de refocussing sur son mini-site dédié. Les liens étroits entre cette fonctionnalité nouvellement dévoilée et celles de l'appareil photo plénoptique vendu par Lytro dont je vous avais déjà parlé ici ne font aucun doute. Sauf qu'on a bien à faire à des technologies complètement différentes...
Pour résumer, l'appli en question permet de faire le focus a posteriori sur les différentes zones d'une photo ou sur l'intégralité de l'image en augmentant artificiellement la profondeur de champ. Ainsi il devient difficile de rater les images prises avec un téléphone à l'auto-focus bien souvent capricieux.
Lytro et la reconstruction de la profondeur de la scène
L'appareil photo de Lytro cherche à déduire la profondeur de la scène sur un principe proche de celui du fonctionnement de l'oeil humain. La caméra plénoptique contient plusieurs capteurs et des jeux de lentilles complexes disposés de telle sorte à ce que les chemins optiques passant par l'un ou l'autre des capteurs soient différents.
C'est un peu comme vos yeux qui voient chacun deux images différentes avec des objets plus ou moins décalés en fonction de leur distance. Le cerveau fait ensuite le reste en opérant une reconstruction 3D à partir de cet écartement. Cette vision stéréoscopique est également à la base de la 3D au cinéma.
Lytro fonctionne exactement sur le même principe, mais avec davantage d'images d'entrée et le rôle du cerveau dans la reconstruction 3D est remplacé par quelques calculs effectués sur le processeur de votre ordinateur. Il effectue ainsi une vraie reconstruction de la profondeur de la scène grâce à la redondance d'information et peut appliquer un flou cohérent sur l'image. L'inconvénient est que la circuiterie optique est encombrante et que les calculs sont assez lourds et cela se voit sur le form-factor de l'objet et sur la résolution assez faible des images de sortie.
Nokia et le focus stacking
Nokia a choisi une approche totalement différente pour son appli. Les téléphones peuvent prendre des photos à un framerate[1] toujours plus élevé. Dans un téléphone classique, lors de la mise au point, le téléphone déplace la lentille entre chaque image puis effectue une mesure de netteté sur l'image (plus exactement sur une portion de celle-ci: la ROI). Il choisit ensuite l'image la plus nette. Tout ça se passe à chaque fois que vous souhaitez prendre une photo. Selon que l'on décide d'avoir le premier plan ou l'arrière plan net, on ne choisit pas la même ROI.
Comment changer la mise au point à posteriori ? Sur l'intégralité de la plage totale de focus, on peut donc obtenir plusieurs images correspondant à différentes régions nettes de l'image. Il suffit ensuite d'en sélectionner quelques unes et de les stocker et d'afficher l'image la plus nette dans la région dans laquelle l'utilisateur clique. Jusque là rien de très compliqué.
Là où ça se complique, c'est lorsque l'on veut faire une image avec tous les plans nets (voir image ci-dessous) à partir de toutes ces images pour lesquelles un seul plan est net. Il faut fusionner le contenu des différentes images stockées en ne gardant que ce qui est net et en supprimant les zones floues : c'est ce qu'on appelle du focus stacking. En soit c'est assez simple, sauf pour les raccords ! Faisons une petite expérience : regardez au loin, fermez un oeil et approchez votre doigt de votre oeil ouvert. Il devient flou, parait plus large et, chose importante, vous commencez à voir à travers sur les bords de celui-ci.
Il se passe exactement la même chose sur un objet à l'avant plan quand vous faites le focus à l'arrière plan avec n'importe quel appareil photo : l'objet flou au premier plan bave sur l'arrière plan. Du coup, séparer les deux est une vraie galère. C'est pour ça qu'on peut observer des artefacts sur les images fournies par Nokia à la jonction de deux plans aux focus très différents (voir photo ci-dessous: le bord de la main devrait être net, mais il devient flou à cause d'un problème de fusion d'images).
Pour pouvoir reconstruire correctement les bords, il faudrait une information spatiale supplémentaire pour savoir quelle est l'information cachée derrière la partie où l'avant plan bave, ce que Lytro fait très bien grâce à son système optique. Si on utilise uniquement une variation de focus, il nous manque une partie de l'information : que se cache-t-il derrière les zones d'occultation situées sur les bords des objets ?
Conclusion
Nokia Refocus permet de faire un Lytro à moindre coût et sur des images à plus haute résolution car il nécessite beaucoup moins de calculs. Mais cette solution simplifiée à un coût au niveau qualitatif puisque les transitions entre les objets éloignés ne peuvent pas être correctement reconstruites à cause d'un manque d'information. Ceci dit, il s'agit d'un compromis acceptable pour une appli légère et utilisée ponctuellement.
Note
[1] Nombre d'images par seconde