Podemos medir o tamanho de um objeto usando dados EXIF ​​de uma foto?


7

Muitas pessoas perguntaram se podemos medir a distância de um objeto na foto. Mas eu queria saber se podemos medir o tamanho de um objeto na foto. Obviamente, assumindo que sabemos tudo, desde o tamanho do sensor até a altura do fotógrafo, etc.

Exemplo: Se eu tirar uma foto de um pássaro em voo com apenas o céu como pano de fundo, não haverá objetos no quadro para dar uma idéia do tamanho do pássaro. Então, se eu pudesse calcular o tamanho para um nível aproximado, seria muito bom saber.

Respostas:


6

Nunca seria mais do que uma estimativa, sem alguma referência externa ou distância precisa do assunto. Se você calculou a distância do objeto, o FOV (/ comprimento da lente) e o tamanho do sensor, não é muito difícil calcular. A maior incerteza seria a distância para o assunto.

Para encontrar a resolução espacial (quão grande ( largo ou alto ) um pixel está no assunto) use:

(distância * (tamanho do sensor / distância focal)) / número de pixels

Verifique se o tamanho do sensor e a distância focal estão usando a mesma escala (ambos em milímetros ou polegadas).

Em seguida, você pode contar o número de pixels para o assunto e multiplicá-lo pela resolução espacial de um pixel.

Estou assumindo uma mudança linear no FOV em toda a área da lente, que não é 100% precisa, mas muito próxima para lentes normais e mais longas.


4
Pena que não temos o LaTeX-math trabalhando aqui na foto.
— Håkon K. Olafsen


A equação está errada. Por que 2x? Você está calculando uma área, portanto, ela é ao quadrado. Deve ser a distância ^ 2. Veja photo.stackexchange.com/a/12437/7292
— Rado

Oh .. e a distância focal também deve ser quadrado
— Rado

@ HåkonK.Olafsen: Observe: sensor_x / comprimento_ focal = imagem_x / distância; sensor_y / comprimento_ focal = imagem_y / distância (a distância é calculada a partir do ponto focal). Considerando um pixel quadrado, você pode pegar qualquer um destes e obter: picture_x = distance * sensor_x / focal_length. Divida-o pela contagem de pixels horizontal pixel_cnt_x que você obtém: distance (sensor_x / focal_length) / pixel_cnt_x. Esta é a resolução espacial horizontal. O multiplicador "2x" não está correto. Se você tiver pixels não quadrados, precisará fazer as contas para as resoluções horizontal e vertical.
— TFuto

2

Minha câmera armazena a distância do foco na imagem. Com isso, você sabe a que distância seu pássaro estava. Não será muito difícil calcular o tamanho do pássaro. Por exemplo, você pode tirar um objeto de tamanho conhecido e tirar uma foto com a mesma lente da mesma distância e comparar o tamanho desse objeto na imagem, com o tamanho do pássaro na imagem.


11
Que câmera é essa?
— Ysap

É uma Nikon D300
— Rene

11
Mas a distância do foco não atinge apenas cerca de 3m e depois se torna infinito? Quando uso o firmware Magic Lantern na minha Canon 550D, pelo menos.
— SAARU Lindestøkke

11
Eu ficaria desconfiado de confiar na distância fornecida pela câmera em qualquer coisa que se aproximasse remotamente de uma distância de foco do infinito, pois o menor erro de calibração produziria erros que poderiam ser várias ordens de magnitude da distância fornecida.
— Michael C

@BartArondson Depende da distância focal da lente. Uma distância focal mais longa, como frequentemente usada quando se observa pássaros, focalizará muito mais antes de atingir ∞ do que uma lente grande angular. É por isso que a última medida anterior ∞ para escalas de distância em lentes WA geralmente é de apenas cerca de 1 metro, mas uma lente telefoto longa terá uma marcação de mais de 50 metros ou até 100 metros logo antes da marca..
— Michael C

1

a resposta geral é: Sim e Não, se você adicionar informações suficientes além das informações EXIF, isso poderá ser feito, se você não adicionar informações suficientes, então não, torna-se uma estimativa, essas informações são um cálculo extremamente complexo da perspectiva do objeto, mas também usando isso para voltar ao formato e ângulo do porta-retratos, uma medida exata do olho ou do centro do porta-retratos da pessoa (em elevação do solo) e, então, conhecimento do terreno exato elevações da superfície entre você e o objeto. e ainda mais cálculos além disso.

Uma etapa importante que as outras respostas estão deixando de fora é que você deve usar os dados da foto para encontrar os ângulos de perspectiva das linhas horizontais e verticais no objeto de que é sua foto (o que realmente pode ser feito, mas é extremamente cálculo complexo) e ainda mais complexo se, por exemplo, no exemplo de OP de poucos objetos na foto para trabalhar, no entanto, ainda pode ser feito, por exemplo, neste caso, se o objeto não estiver "nivelado" no chão , as informações de altura também são necessárias. No exemplo do OP, muitas dessas informações provavelmente são deixadas de fora / ou desconhecidas; portanto, uma resposta pode ser Não nesse caso de exemplo. Mas, para ficar claro, a premissa da pergunta é factível, se essas informações extras forem conhecidas, e muitas vezes forem conhecidas, ou se for possível fazer estimativas dessas informações.

Para resumir como (em geral) isso pode ser feito: é preciso uma medição exata das mudanças de altitude da superfície do solo entre você e o objeto (há mais do que apenas uma frase).

você precisará de uma dimensão exata do chão até o centro do olho ou o centro do quadro de imagem que a câmera está produzindo; esse quadro de imagem pode ser calculado a partir das informações EXIF, mas a inclinação exata do quadro de imagem (câmera) em relação ao objeto precisa ser calculado a partir dessa informação de perspectiva mencionada anteriormente. E no caso do exemplo do OP, é necessária a altura do objeto fora do chão (ou a projeção desse objeto de volta ao chão)

para mostrar que isso pode ser feito em uma foto de exemplo mais geral, um aplicativo que faz tudo isso está abaixo: (exceto pelo uso de estimativas para o centro do olho e por um cálculo complexo de elevs da superfície do solo, que também se torna uma "estimativa" )

portanto, como ele usa estimativas, é necessário conhecer uma dimensão do objeto para corrigir a saída final do aplicativo. mas isso é muito melhor do que ter que levar uma fita métrica para tudo no objeto. Para ficar claro, se o aplicativo tivesse a dimensão exata do olho ou centro da moldura da imagem e um perfil da superfície do solo fosse alterado, ele nem precisaria dessa "uma dimensão conhecida". portanto, nesse caso, a resposta para a pergunta do OP seria Sim.

a saída final é uma "elevação" corrigida em perspectiva do objeto, e mesmo com dimensões automáticas. (observe que esta imagem foi corrigida em perspectiva, de modo que todas as verticais são verticais, horizontais e horizontais e isso é feito automaticamente, sem a entrada do usuário). , que é usado para encontrar o ângulo (inclinação da guinada etc.) do quadro da imagem. (como a câmera estava sentada no momento da foto) é necessário enfatizar que os outros comentários foram deixados de fora. No caso de um "pássaro", como no exemplo do OP, será praticamente deixado alto e seco para esses dados necessários, mas em muitas situações isso pode ser resolvido. Por exemplo, este exemplo abaixo.

insira a descrição da imagem aqui

http://www.pictureenginecompany.com/MeasureEngine/MeasureEngine.html


Não acho que isso responda à pergunta. Este aplicativo apenas calcula comprimentos relativos de coisas quando um comprimento é conhecido. A questão refere-se a trabalhar para fora o tamanho de algo, como um pássaro, do EXIF informação de tipo tais como o comprimento focal, a distância do foco etc.
— MikeW

Mencionei como calcular o tamanho de algo nos comentários e mencionei que esse aplicativo faz isso, mas usa "estimativas" para algumas dessas importantes informações que os comentários chamam a atenção ... e por que o aplicativo precisa de "um comprimento conhecido" para corrigir devido às "estimativas" usadas, se você tiver informações exatas nessas áreas-chave, conforme mencionado nos comentários, esse aplicativo não precisaria do "comprimento único conhecido" e também faz várias das etapas necessárias, incluindo as que os outros comentários deixaram de fora, como trabalhar para trás para encontrar a inclinação e a guinada do quadro da imagem.
— Hokkuk
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.