Open Source Robotics

Uma coleção selecionada de projetos, ferramentas e software de robótica de código aberto de alta qualidade.

AutoPhoto: Aesthetic Photo Capture using Reinforcement Learning

Autores: Hadi AlZayer, Hubert Lin, Kavita Bala · IROS 2021

Licenças

  • Acesso aberto
  • Artigo: CC BY 4.0

Tudo o que segue se baseia no artigo completo sob a licença CC BY 4.0; sua figura é mostrada com crédito aos autores.

Em resumo

Um agente de RL move e gira uma câmera por uma cena interna desconhecida até que um modelo estético aprendido avalie bem a vista, e então tira a foto; treinado no Habitat e executado em um UGV Jackal.

Por que importa

Mostra que uma pontuação de qualidade aprendida e orientada por dados pode conduzir de ponta a ponta a busca de ponto de vista de um robô, em vez de regras de enquadramento escritas à mão e ligadas a um objeto escolhido. O mesmo padrão de um avaliador aprendido, uma política com memória e um limiar adaptativo local se aplica a outras tarefas de percepção ativa, como inspeção ou fotografia imobiliária, que os autores citam como caso de uso.

Problema

Compor uma boa foto significa mover e girar a câmera até a vista ficar certa, o que exige prática. A composição automática anterior ou recorta uma imagem fixa ou, na cinematografia com drones, enquadra pessoas com heurísticas como a regra dos terços. Uma pontuação estética aprendida não pode ser otimizada analiticamente, e os modelos estéticos existentes foram treinados para comparar recortes de uma mesma imagem, não vistas de lugares diferentes.

Solução proposta

A captura de fotos é formulada como um POMDP: o agente vê apenas a vista atual da câmera, anda para a frente ou para trás 0,25 m, gira 10°, 30° ou 90°, ou tira a foto. Uma política ator-crítico com memória LSTM é treinada com PPO no AI Habitat em cenas do Gibson, recompensada pela variação da pontuação de um modelo estético ResNet18 treinado com AVA e CPC com perdas extras para robustez a pequenos deslocamentos e a má exposição. A recompensa de captura é +1 somente se a foto superar um limiar local definido como a média mais um desvio padrão das pontuações das 100 vistas amostradas mais próximas.

Principais ideias

  • Modelos estéticos treinados apenas para ordenar recortes de uma mesma imagem ordenam mal pontos de vista diferentes; treinar com AVA e CPC com perdas de translação e de exposição dá um avaliador adequado a uma câmera em movimento.
  • Moldar a recompensa com a variação por passo da pontuação estética mais um bônus de exploração decrescente é fundamental; uma recompensa apenas terminal é esparsa demais.
  • A memória LSTM permite ao agente evitar reexplorar regiões ruins e, no robô, aprender que uma ação repetida sem mudança de estado exige uma ação diferente.
  • Definir o limiar de sucesso a partir das estatísticas de pontuação da própria região local torna o objetivo independente do tamanho da cena e da qualidade geral da cena.

Principais resultados

  • As fotos capturadas superaram o limiar estético local em 81,7% ± 0,9 das vezes em 20 cenas inéditas do Gibson e em 77,8% ± 1,0 em 18 cenas do Replica.
  • As melhores referências chegaram a 57,8% (aprendizado por imitação) no Gibson e 56,6% (seleção de quadros-chave) no Replica; a regra dos terços chegou a 19,1% e 17,3%, e o aleatório a 13,3% e 14,3%.
  • O modelo estético obteve 84,4% na ordenação entre vistas (AVA) contra 62,2% do VEN, 99,7% na ordenação por exposição contra 81,0%, e um MSE de recorte mínimo de 0,03 contra 0,29, com um pequeno custo na ordenação de recortes (CPC 72,2% contra 75,8%).
  • Em um Clearpath Jackal que tirou 64 fotos internas, 1792 julgamentos no Mechanical Turk deram uma preferência média de 0,63 ± 0,01 pela foto do robô em relação à vista inicial (teste t contra 0.5, p < 0.05).
  • Ablações no Gibson: remover a LSTM baixou o sucesso para 62,7%, usar apenas características da última camada para 62,3% e remover ambos os termos de modelagem da recompensa para 69,3%.

Limitações

  • Os autores afirmam que a abordagem depende de ambientes simulados de alta qualidade, que podem ser mais difíceis de obter em alguns domínios.
  • Os autores afirmam que o comportamento do sistema depende fortemente da função estética escolhida.
  • O movimento é limitado a passos planos discretos (translações de 0,25 m e giros de 10°/30°/90°); o controle completo de 6 graus de liberdade, por exemplo em um drone, fica para trabalhos futuros.
  • A avaliação no mundo real compara a foto final apenas com a vista inicial do robô, já que um limiar estético não pode ser estimado sem uma amostragem densa da cena real.
  • No robô, o tratamento de colisões é externo: se a ação escolhida causar colisão, a política é consultada novamente até propor uma ação válida.

Impacto na área

Finalista do IROS 2021 Best Entertainment and Amusement Paper Award, com 15 citações. Os autores disponibilizam o código-fonte no GitHub.

Resumo

O processo de capturar uma foto bem composta é difícil e leva anos de experiência para ser dominado. Propomos um pipeline inédito para que um agente autônomo capture automaticamente uma fotografia estética navegando dentro de uma região local de uma cena. Em vez da otimização clássica sobre heurísticas como a regra dos terços, adotamos um estimador estético orientado por dados para avaliar a qualidade da foto. Um arcabouço de aprendizado por reforço é usado para otimizar o modelo em relação à métrica estética aprendida. Treinamos nosso modelo em simulação com cenas internas e demonstramos que nosso sistema consegue capturar fotos estéticas tanto em simulação quanto em ambientes do mundo real em um robô terrestre. Até onde sabemos, este é o primeiro sistema capaz de explorar automaticamente um ambiente para capturar uma foto estética em relação a um estimador estético aprendido. O código-fonte está em https://github.com/HadiZayer/AutoPhoto

Links

  • 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
  • Código: https://github.com/HadiZayer/AutoPhoto

Este site requer JavaScript. Por favor, habilite o JavaScript para explorar nossos projetos de robótica.