Existe software que possa identificar a iluminação em uma foto existente?

8

Existe um aplicativo que tire uma região selecionada de uma foto e retorne sua estimativa dos parâmetros de iluminação necessários para emular as condições de iluminação na região selecionada da foto?

Meu palpite sobre os parâmetros que ele retornaria incluem: fontes de iluminação, difusão da fonte, cor da fonte, duração da fonte, fonte de luz reflexiva / incidente, movimento da fonte etc. (congratulo-me com o feedback sobre essas suposições e a probabilidade é possível modelá-los estaticamente.)

erros
fonte
11
Isso parece uma tarefa difícil. Quando olhamos para uma foto, aplicamos algum conhecimento sensível ao contexto sobre o que estamos vendo (em outras palavras, temos uma versão de "normal" em nossas mentes que podemos comparar com a foto). Ficarei impressionado se houver algo lá fora que possa fazer isso.
D. Lambert
@D. Lambert: Concordo, apesar de acreditar que alguns dos algoritmos do PhotoShop fazem cálculos para coisas assim, mas não há saída legível para uso externo, tanto quanto eu sei; significando que esses cálculos são usados ​​como entrada para outros cálculos.
erros
2
O trabalho necessário para criar um software como esse é um milhão de vezes comparado às 2-3 horas de treinamento que alguém precisaria adivinhar com precisão a maioria dos parâmetros. Além disso, algumas dessas coisas são impossíveis de descobrir ... duração da fonte?
Jędrek Kostecki
+1 @ Jędrek Kostecki: Bom ponto em relação ao fato de que os humanos poderiam fazê-lo mais rápido (atualmente), embora qual seja a graça nisso ... :-) ... "duração da fonte", por exemplo, um flash foi usado.
erros
Ah, o melhor software do mundo é provavelmente o cérebro humano. Algoritmos poderiam ser desenvolvidos para isso, que poderiam fazer aproximações razoáveis ​​com base em realces e sombras, mas por que fazê-lo? É provável que o cérebro humano pule para a resposta mais rapidamente com a tecnologia atual do que o computador.
John Cavan

Respostas:

5

Na verdade, houve muita pesquisa nessa área:

Os resultados são limitados, no entanto, como o problema é massivamente sub-restrito, há muito mais incógnitas do que dados. Isso significa que soluções exatas são impossíveis e qualquer resposta que você obtém está sujeita a ambiguidade.

Outro problema para o que você está sugerindo é que a pesquisa nessa área é direcionada ao entendimento da máquina de imagens visuais. Ser capaz de estimar a iluminação seria importante para os robôs navegarem visualmente por um labirinto, pois poderiam julgar o ângulo das paredes etc. Essas aplicações terão demandas diferentes no software do que o objetivo artístico de recriar a iluminação em um bom retrato para exemplo.


Sobre a diferença entre pesquisa e software comercial, a pesquisa de hoje forma a base do software de amanhã (uma das razões pelas quais eu traço os procedimentos do SIGGRAPH todos os anos). A costura automática de panorama foi um projeto de pesquisa uma vez e agora é um dado adquirido. Lembro-me de ler sobre o redimensionamento com reconhecimento de conteúdo quando ele foi publicado em uma conferência de visão computacional (na época era chamada de "escultura de costura") e levou apenas alguns anos para se tornar um recurso padrão no Photoshop.

Há uma diferença, no entanto, entre o preenchimento com reconhecimento de conteúdo e o que você está propondo, e isso é que o preenchimento com reconhecimento de conteúdo pode economizar horas de retoque e, portanto, há uma grande demanda dele. Estimar as condições de iluminação de uma fotografia é um processo muito rápido para quem é adepto da iluminação.


Um vislumbre final de esperança está na área de pós-produção de vídeo. A estimativa / modelagem das condições originais de iluminação é importante para compor realisticamente a animação gerada por computador em imagens reais (é mais provável que as inconistências de iluminação sejam notadas nas imagens em movimento do que em uma foto). Isso mais a quantidade extra de dados disponíveis em um fluxo de vídeo, e eu imagino que você veria o recurso que procura após aparecer primeiro no software de edição de vídeo.

Matt Grum
fonte
+1 @Matt Grum: Obrigado, a pesquisa ajuda a "esclarecer" os problemas na solução desse problema. Meu palpite é que os sensores do robô e a IA provavelmente utilizariam a correlação de observações longitudinais ao longo do tempo e no espaço, incluindo possíveis filtros para diferentes comprimentos de onda da luz; por exemplo, infravermelho para detectar calor. Quanto aos objetivos artísticos, você quer dizer que eles provavelmente exigiriam inferências que iriam além da localização da câmera, luzes e objetos.
erros
Eu acho que é importante ressaltar que quando se trata de panorama automático. costura, você tem todas as informações necessárias disponíveis nas imagens que está costurando. Isso está em forte contraste com a adivinhação da iluminação que ilumina uma cena, pois (fora de uma luz NA cena) você nunca pode realmente saber o que a luz era. Na costura panorâmica, você é rico em informações ... na suposição de fontes de luz, você é anêmico nas informações. Quando se trata de vídeo e CG, você tem a opção de inserir explicitamente informações EXATAS de iluminação, e adivinhar é desnecessário.
jrista
11
@jrista isso é verdade, mas no preenchimento com reconhecimento de conteúdo , você não tem informações sobre a área que está tentando preencher, é tudo inferência - como o problema de estimativa de iluminação, pareceria bastante improvável ao mesmo tempo, mas agora é um recurso padrão no Photoshop, GIMP
Matt Grum
+1 @Matt Grum: De fato, o preenchimento com reconhecimento de conteúdo era o que eu pensava como um exemplo disso, aqui está um vídeo mostrando um exemplo de seu uso .
erros
2
@MattGrum: Se você pesquisar como o preenchimento com reconhecimento de conteúdo funciona, ele não é tão anêmico às informações quanto a iluminação convidativa. Uma parte significativa do preenchimento com reconhecimento de conteúdo é a clonagem de conteúdo próximo, juntamente com alguns algoritmos inteligentes básicos e correspondência de padrões para tornar o conteúdo preenchido congruente e consistente com padrões. Você TEM MUITA informação disponível para fazer com que o preenchimento com reconhecimento de conteúdo funcione ... como a costura panorâmica. A única informação que você precisa adivinhar é a iluminação refletida pela cena. A quantidade de informações úteis disponíveis é de magnitude diferente.
jrista
6

Francamente, não - não com o software atualmente disponível. Pode haver pesquisas em andamento aqui e quem sabe o que o futuro reserva, mas, no momento, não.

Existem muitas informações para o software processar, especialmente no nível do consumidor. No mínimo, você teria que ter uma maneira de dizer ao software como era o assunto UNLIT. Essa é a vantagem que um ser humano tem - temos uma pré-visualização em nossas mentes de como o assunto seria normalmente. Isso permite que uma pessoa diga "bem, ele NORMALMENTE não tem uma área escura e nem um ponto luminoso ali".

Além disso, existem MUITAS maneiras diferentes de produzir o mesmo efeito na iluminação (embora muitas sejam mais comuns que outras).

rfusca
fonte
@rfusca: Sim, a "pré-consciência" dos objetos de qualidades refletivas e a relação da câmera com as luzes e os objetos aumentariam a probabilidade de que isso fosse possível, ainda assim pensam que é possível; Afinal, as estimativas não são perfeitas.
erros
@blunders: Na melhor das hipóteses, as estimativas poderia dar-lhe a informação aproximada sobre quanto REFLECTÂNCIA pode ser observado em uma cena ... mas insisto áspera . Tentar obter algo mais do que uma suposição rouge sobre o número de fontes de luz, atributos da fonte (cor, difusão, duração da emissão), etc., na verdade, é apenas pedir muita adivinhação com base em um julgamento baseado na observação. Se há uma coisa que os computadores sugam ... é isso. Fazer um palpite preciso e educado sobre o que a iluminação pode ter iluminado uma cena requer uma mente experiente .
jrista
Você poderia argumentar que uma inteligência artificial suficientemente avançada poderia aprender o suficiente para se tornar uma mente experiente em relação à observação da iluminação das fotografias ... mas, no momento, duvido que exista algo assim em escala rudimentar, sem falar em algo que poderia produzir resultados consistentemente úteis.
jrista
@jrista - Certo, minha resposta reflete se provavelmente existe algo com a tecnologia atual que produz resultados realistas, utilizáveis ​​e precisos.
Rfusca
Eu acho que esse é provavelmente o caso. No entanto, eu não ficaria surpreso se houvesse pesquisa nessa área. Parece um problema interessante. Então, eu hesitaria em dizer "não" sem algum estudo.
Por favor, leia meu perfil