AutoPhoto: Aesthetic Photo Capture using Reinforcement Learning
Auteurs: Hadi AlZayer, Hubert Lin, Kavita Bala · IROS 2021
Licences
- Accès libre
- Article: CC BY 4.0
Tout ce qui suit s'appuie sur l'article complet sous sa licence CC BY 4.0 ; sa figure est montrée en citant les auteurs.
En bref
Un agent de RL déplace et fait pivoter une caméra dans une scène intérieure inconnue jusqu'à ce qu'un modèle d'esthétique appris note la vue favorablement, puis prend la photo ; entraîné dans Habitat, exécuté sur un UGV Jackal.
Pourquoi c'est important
L'article montre qu'un score de qualité appris et fondé sur les données peut piloter de bout en bout la recherche de point de vue d'un robot, au lieu de règles de cadrage écrites à la main et liées à un objet choisi. Le même schéma, un évaluateur appris, une politique à mémoire et un seuil adaptatif local, s'applique à d'autres tâches de perception active comme l'inspection ou la photographie immobilière, que les auteurs citent comme cas d'usage.
Problème
Composer une bonne photo consiste à déplacer et faire pivoter la caméra jusqu'à ce que la vue semble juste, ce qui demande de la pratique. La composition automatique antérieure soit recadre une image fixe, soit, en cinématographie par drone, cadre des sujets humains à l'aide d'heuristiques comme la règle des tiers. Un score esthétique appris ne peut pas être optimisé analytiquement, et les modèles d'esthétique existants ont été entraînés à comparer des recadrages d'une même image, et non des vues prises depuis des endroits différents.
Solution proposée
La prise de photo est formulée comme un POMDP : l'agent ne voit que la vue courante de la caméra, avance ou recule de 0,25 m, tourne de 10°, 30° ou 90°, ou prend la photo. Une politique acteur-critique avec une mémoire LSTM est entraînée par PPO dans AI Habitat sur des scènes Gibson, récompensée par la variation du score d'un modèle d'esthétique ResNet18 entraîné sur AVA et CPC avec des pertes supplémentaires pour la robustesse aux petits décalages et à une mauvaise exposition. La récompense de prise de vue vaut +1 seulement si la photo dépasse un seuil local fixé à la moyenne plus un écart-type des scores des 100 vues échantillonnées les plus proches.
Idées clés
- Les modèles d'esthétique entraînés uniquement à classer des recadrages d'une même image classent mal des points de vue différents ; un entraînement sur AVA et CPC avec des pertes de translation et d'exposition donne un évaluateur adapté à une caméra mobile.
- Façonner la récompense avec la variation par pas du score esthétique plus un bonus d'exploration décroissant est essentiel ; une récompense uniquement terminale est trop éparse.
- La mémoire LSTM permet à l'agent d'éviter de réexplorer les zones médiocres et, sur le robot, d'apprendre qu'une action répétée sans changement d'état appelle une autre action.
- Fixer le seuil de réussite à partir des statistiques de score propres à la région locale rend l'objectif indépendant de la taille de la scène et de sa qualité globale.
Principaux résultats
- Les photos prises ont dépassé le seuil esthétique local dans 81,7 % ± 0,9 des cas sur 20 scènes Gibson inédites et 77,8 % ± 1,0 sur 18 scènes Replica.
- Les meilleures références ont atteint 57,8 % (apprentissage par imitation) sur Gibson et 56,6 % (sélection d'images clés) sur Replica ; la règle des tiers a atteint 19,1 % et 17,3 %, l'aléatoire 13,3 % et 14,3 %.
- Le modèle d'esthétique a obtenu 84,4 % en classement inter-vues (AVA) contre 62,2 % pour VEN, 99,7 % en classement d'exposition contre 81,0 %, et une MSE de recadrage minimal de 0,03 contre 0,29, au prix d'une légère perte en classement de recadrages (CPC 72,2 % contre 75,8 %).
- Sur un Clearpath Jackal ayant pris 64 photos d'intérieur, 1792 jugements Mechanical Turk ont donné une préférence moyenne de 0,63 ± 0,01 pour la photo du robot par rapport à la vue initiale (test t contre 0,5, p < 0.05).
- Ablations sur Gibson : supprimer le LSTM a fait chuter la réussite à 62,7 %, n'utiliser que les caractéristiques de la dernière couche à 62,3 %, et supprimer les deux termes de façonnage de la récompense à 69,3 %.
Limites
- Les auteurs indiquent que l'approche dépend d'environnements simulés de haute qualité, qui peuvent être plus difficiles à obtenir dans certains domaines.
- Les auteurs indiquent que le comportement du système dépend fortement de la fonction esthétique choisie.
- Le mouvement est limité à des pas plans discrets (translations de 0,25 m et rotations de 10°/30°/90°) ; un contrôle complet à 6 degrés de liberté, par exemple sur un drone, est laissé à des travaux futurs.
- L'évaluation en conditions réelles ne compare la photo finale qu'à la vue de départ du robot, car un seuil esthétique ne peut pas être estimé sans un échantillonnage dense de la scène réelle.
- Sur le robot, la gestion des collisions est externe : si l'action choisie entraînait une collision, la politique est interrogée à nouveau jusqu'à ce qu'elle propose une action valide.
Impact sur le domaine
Finaliste du IROS 2021 Best Entertainment and Amusement Paper Award, cité 15 fois. Les auteurs publient le code source sur GitHub.
Résumé
Prendre une photo bien composée est difficile et demande des années d'expérience pour être maîtrisé. Nous proposons un pipeline nouveau permettant à un agent autonome de prendre automatiquement une photographie esthétique en naviguant dans une région locale d'une scène. Au lieu d'une optimisation classique sur des heuristiques telles que la règle des tiers, nous adoptons un estimateur d'esthétique fondé sur les données pour évaluer la qualité des photos. Un cadre d'apprentissage par renforcement est utilisé pour optimiser le modèle par rapport à la métrique d'esthétique apprise. Nous entraînons notre modèle en simulation avec des scènes d'intérieur, et nous montrons que notre système peut prendre des photos esthétiques à la fois en simulation et dans des environnements réels sur un robot terrestre. À notre connaissance, il s'agit du premier système capable d'explorer automatiquement un environnement pour prendre une photo esthétique au regard d'un estimateur d'esthétique appris. Le code source est disponible à l'adresse https://github.com/HadiZayer/AutoPhoto
Liens
- arXiv 2109.09923: https://arxiv.org/abs/2109.09923
- DOI 10.48550/arXiv.2109.09923: https://doi.org/10.48550/arXiv.2109.09923
- PDF: https://arxiv.org/pdf/2109.09923v1
- Code: https://github.com/HadiZayer/AutoPhoto