Como posso saber se duas fotos foram tiradas com a mesma câmera sem metadados?

8

É possível identificar imagens (sem dados exif) e vinculá-las exatamente à mesma câmera? Nesse caso, gostaria de algumas recomendações de software para fazer o trabalho.

Eu tenho duas fotos que eu gostaria de comparar se foram tiradas com a mesma câmera ou não. Ambos parecem não ter dados EXIF, mas tenho certeza de que ouvi outras impressões digitais ocultas nas imagens.

Por exemplo, o ruído do sensor deve ser bastante consistente se as fotos forem tiradas com a mesma câmera, como disparar uma pistola e a bala obter marcas únicas. Também ouvi dizer que os fabricantes de câmeras às vezes adicionam uma marca d'água oculta que pode ser lida com algum software especial.

jman
fonte
5
Parece que você está assistindo muita CSI :)
Flimzy
Que formato são as imagens? Se eles são jpeg, como estão compactados? Eles foram reduzidos?
Evan Krall
3
@Flimzy Esta tecnologia existe. Eu deveria saber - ajudei a prototipá-lo ao trabalhar para a Força Aérea dos EUA, usando pesquisas da SUNY Binghamton. Minha resposta cita a pesquisa que entrou no trabalho que fizemos.
Thomas Owens

Respostas:

10

Por exemplo, o ruído do sensor deve ser bastante consistente se as fotos forem tiradas com a mesma câmera, como disparar uma pistola e a bala obter marcas únicas.

Bingo - isso está certo no dinheiro.

Existem dois aspectos que eu conheço quando trabalhei nessa área em 2006-2007. O primeiro foi a identificação da marca e modelo da câmera e o segundo foi identificar se uma câmera específica tirou uma imagem específica.

Aqui estão alguns links relevantes:

Dada uma grande amostra de imagens de várias câmeras, posso produzir um padrão de ruído médio que existe em uma determinada marca e modelo. Quando fornecida com uma única imagem, posso usar esse padrão de ruído médio e a imagem única para, com alta confiança, informar a marca e o modelo de uma determinada câmera.

Dada uma amostra de imagens de uma única câmera, posso comparar uma única imagem com o padrão de ruído dessa amostra de imagens e dizer se a câmera que produziu a amostra grande também produziu a imagem única.

No entanto, os algoritmos e técnicas para fazer isso são patenteados. Acredito que a patente US 7.616.237 é relevante para sua pergunta em particular. Ele cita o trabalho de Jessica Fridrich, Miroslav Goljan e Jan Lukas e também fornece uma série de trabalhos de pesquisa sobre o assunto. Infelizmente, não estou familiarizado com nenhum software disponível publicamente (comercial ou outro) que implemente essa técnica. O trabalho que eu estava fazendo era em nome do Departamento de Defesa dos EUA, que apoiou a pesquisa que entrou nessa patente.

Thomas Owens
fonte
Como isso é afetado por câmeras com lentes removíveis? Se eu tiver duas câmeras e duas lentes e fornecer 1000 fotos de cada câmera, mas as lentes forem trocadas aleatoriamente, qual será a precisão dos resultados? (Assume as lentes são modelos idênticos, comprimento focal, de modo a distorção, etc, não vai ser mortas brindes)
Flimzy
11
@ Flimzy Eu não acredito que seja significativo. O padrão de ruído é produzido pela eletrônica que fica atrás da lente, pelo sensor CCD ou CMOS e por todos os outros componentes que carregam cargas. Portanto, mesmo que você tenha lentes aleatórias de distância focal, distorção e assim por diante, o padrão de ruído existente e capturado pelo sensor na imagem de saída de pixel n * m deve ser semelhante, se não o mesmo.
Thomas Owens
Isso significa que uma lente suja / arranhada / com defeito não afetará esse processo? Suponho que uma lente teria que estar muito suja ou arranhada para fazer mais do que apenas fazer uma foto embaçada na maioria dos casos, afinal, não é?
Flimzy 02/11/11
@Flimzy Não tem nada a ver com lentes sujas ou arranhadas ou com imagens borradas. Tudo ocorre no nível do sensor. Existem fatores ambientais que causam diferenças no padrão de ruído, e é por isso que você precisa de um conjunto de dados bastante grande para obter o ruído consistente nas imagens. Mas você pode ter as lentes mais embaçadas, arranhadas e sujas e ainda identificar a câmera, desde que os mesmos sensores tenham sido usados.
Thomas Owens
Muito interessante. Graças ao cargo informativo, e para mim e minhas perguntas :) humoring
Flimzy
4

Se o sensor tiver pixels quentes e esses pixels não forem removidos das fotos, você poderá identificar a câmera.

asalamon74
fonte
O mesmo vale para a poeira do sensor, se o sensor não tiver sido limpo entre as fotos.
30611 Imre
2

Na sua situação, você praticamente não pode. O ruído não é inteiramente aleatório, mas possui um componente aleatório. Para isolar a impressão digital da câmera, é necessário criar um perfil da câmera em uma série de fotos. Tendo apenas duas fotos, não há muito o que fazer.

Alguns fabricantes de câmeras adicionam uma assinatura, mas isso inclui os metadados. Portanto, se o EXIF ​​foi retirado, você estará sem sorte nessa frente. Além disso, ele foi projetado para determinar se uma imagem veio de uma câmera e não de qual câmera ela veio.

Itai
fonte
11
Além disso, se as imagens forem compactadas (como a maioria), suspeito que a grande maioria de qualquer ruído do sensor e / ou da lente fique distorcida além de qualquer coisa útil.
Flimzy
Pelo que entendi, a técnica "impressão digital de ruído do sensor" é surpreendentemente robusta contra a compactação e outras edições com perda de imagem.
Por favor, leia meu perfil
2

A resposta curta

Sim, é possível combinar uma foto com a câmera discreta em que foi tirada (sem metadados) e também é bastante confiável. A técnica está prontamente disponível em alguns produtos de software, um deles é o Amped Authenticate , produzido pela Amped Software (exoneração de responsabilidade: eu sou o CEO e o Fundador da empresa).

A ideia básica

A idéia básica é que cada dispositivo deixe uma “impressão digital de ruído” diferente em cada foto que produz. Esse componente é chamado de PRNU (não-uniformidade da resposta fotográfica) e tem sido amplamente estudado na literatura. Foi demonstrado ser:

  • constante ao longo do tempo
  • temperatura constante constante - independente de outras configurações da câmera (exposição, foco, etc.)
  • bastante robusto à recompressão (em torno da qualidade JPEG de 5-60%)
  • bastante robusto para ajustes de intensidade e cor (contraste, brilho ...)
  • bastante robusto às modificações locais (ou seja, se uma parte da imagem foi violada, - a imagem como um todo ainda é reconhecida como proveniente de uma câmera específica)

No entanto, ele não funciona corretamente nestas situações:

  • se a imagem foi cortada ou com zoom digital, pois seria necessário apenas uma parte do sensor e não toda a área (isso poderia ser resolvido, mas não seria robusto para redimensionar)
  • para aprimoramentos muito fortes
  • para imagens muito escuras ou muito claras, pois o ruído não está presente nessas áreas)

Como funciona

Para extrair o PRNU da imagem, você precisa basicamente extrair um componente específico do ruído. Você pode fazer isso suavizando a imagem e subtraindo a imagem original. Na literatura, recomenda-se o uso de filtros Wavelet, mas mesmo com filtros mais simples e rápidos, você pode obter resultados semelhantes.

Na prática, o procedimento é realizado da seguinte maneira:

  1. Você precisa criar o CRP (Camera Reference Pattern) : isso é feito para extrair o PRNU de algumas imagens do seu dispositivo de teste. Para obter os melhores resultados, é recomendável usar de 30 a 50 fotos com o mínimo de detalhes possível e não muito escuro ou muito branco e fazer uma média de pixel por pixel. Vamos chamar essas imagens de referência . Se você possui a câmera, pode tirar fotos fora de foco de uma parede ou do céu. Se você não tiver a câmera, poderá tirar fotos em geral, mas provavelmente precisará de mais delas para filtrar os detalhes com a média.

  2. Em seguida, você pode extrair o PRNU da imagem em análise e calcular a correlação com o CRP . Quanto maior a correlação, maior a probabilidade de a imagem provir da mesma câmera.

  3. Você pode classificar automaticamente as imagens que calculam um limite para a correlação: as imagens com uma correlação maior que o limite terão uma alta probabilidade de vir da câmera, caso contrário elas provavelmente serão de outro dispositivo.

O limite pode ser obtido calculando a correlação para:

  • imagens provenientes do mesmo dispositivo (positivo)
  • fotos provenientes de outro modelo de câmera (negativo)
  • fotos provenientes de outro exemplo do mesmo modelo de câmera (negativo)

insira a descrição da imagem aqui

Em geral, é provável que os conjuntos positivos e negativos não sejam perfeitamente separados, portanto, você deve definir um equilíbrio desejado entre falsos positivos e falsos negativos que deseja obter caso a caso.

Se usado adequadamente, o método demonstrou ser muito confiável, mesmo que tenha sido demonstrado que é possível encontrar dois exemplos do mesmo modelo com PRNU muito semelhante. Isso pode acontecer, por exemplo, se o sensor dos dois dispositivos for produzido a partir da mesma pastilha de silicone. É uma possibilidade remota, mas ainda uma possibilidade.

Como exemplo, esta imagem abaixo é o PRNU extraído de uma imagem sem conteúdo significativo (imagem fora de foco de uma parede).

Violação

A correlação PRNU também pode ser aplicada localmente para detectar violação nas imagens. A idéia é calcular o PRNU em uma janela deslizante de nxn pixels na imagem para criar um mapa de correlação. Áreas com baixa correlação terão uma alta probabilidade de serem sujeitas a adulteração.

A imagem abaixo representa um exemplo de uma imagem que está sendo analisada.

insira a descrição da imagem aqui

Abaixo está o resultado da correlação em bloco da PCR com o PRNU extraído da imagem. A área branca representa as áreas com maior probabilidade de serem adulteradas, onde o ruído é inconsistente. No meio da mesa, há um sinal claro de violação.

insira a descrição da imagem aqui

De fato, esta é a imagem original, de onde uma arma foi removida.

insira a descrição da imagem aqui

Referências

Existem inúmeros trabalhos que analisam o PRNU sob diferentes pontos de vista, mas estes são provavelmente os mais importantes:

Sumário

A tecnologia para distinguir imagens provenientes de câmeras diferentes, mesmo que sejam da mesma marca e modelo, existe e é bastante estabelecida na comunidade acadêmica e forense. Existem alguns produtos de software disponíveis no mercado que permitem fazê-lo com relativa facilidade e também avaliam a autenticidade da imagem com um processo semelhante.

martjno
fonte
0

Esta é uma pergunta interessante. Embora eu não ache que seja possível com 100% de precisão, você deve poder determinar, com um número suficiente de fotos de origem, de qual tipo de câmera veio. Isso é fornecido com determinadas distribuições de ruído, certas propriedades internas da câmera (que podem ser determinadas apenas a partir de dados brutos da foto), etc ... Mas não tenho nenhum software conhecido para fazer isso. Realisticamente falando, embora neste momento você deva considerar que atualmente não é possível.

Jon
fonte