PhotoHolmes : Study and implementation of techniques for detecting forgeries in digital images.

O’Flaherty, Julian - Paganini, Rodrigo - Sotelo, Juan Pablo - Umpiérrez, Julieta

Supervisor(es): Gardella Oddone, Marina Paola - Musé, Pablo - Tailanián, Matías

Resumen:

Desde que el ser humano comenzó a pintar, hemos utilizado las imágenes como forma de comunicar información. Tras la invención de la cámara digital, las imágenes se han convertido incrementalmente en una forma de consumir información, llegando al punto en el que consideramos que un hecho es más veraz si hay una imagen que lo valide. Como consecuencia de esta importancia otorgada a las imágenes, surge una necesidad importante en poder identificar las imágenes que hayan sido manipuladas. Esta tesis presenta un estudio del estado del arte en detección y localización de manipulación de imágenes, y el consiguiente desarrollo de PhotoHolmes, una nueva librería de código abierto en Python. El trabajo comienza sentando las bases de la forensica de imágenes, partiendo de cómo se adquiere una imagen digital y cómo podemos modelar las trazas que dejan las distintas etapas de este proceso, definiendo qué constituye una falsificación y cómo pueden ser detectadas a nivel teórico, y una breve introducción al aprendizaje profundo. Habiendo expuesto estos conceptos básicos del área, presentamos una colección de conjuntos de datos y métricas seleccionadas de la literatura, profundizando en los detalles de cómo las diferentes elecciones impactan en el análisis del rendimiento de un método. A continuación, presentamos una selección de diez métodos de detección de falsificaciones, elegidos por su singularidad, desempeño y relevancia, en donde incluimos una breve descripción de cómo funciona cada método y qué sesgos puede tener su desempeño. Para garantizar una evaluación justa y reproducible, desarrollamos PhotoHolmes. PhotoHolmes es una librería de código abierto en Python que compila los métodos, conjuntos de datos y métricas mencionados anteriormente. Además, incluye funcionalidades para ejecutar y evaluar fácilmente los métodos. La librería está diseñada para ser fácilmente extensible, con el objetivo de mantenerla actualizada con el estado del arte a medida que avanza. Utilizando PhotoHolmes, realizamos una evaluación exhaustiva de los métodos seleccionados en los conjuntos de datos. Finalmente, como fruto de esta evaluación, se expone un análisis de las fortalezas, debilidades y particularidades de los métodos.


Ever since humanity began painting pictures, we have used images as a way to communicate information. After the invention of the digital camera, images have increasingly become a part of how information is consumed, reaching a point where we consider something to be more truthful if there is an accompanying image that validates it. Given the importance placed on images, it is crucial to be able to identify images that have been tampered with. This thesis presents a study of the state of the art in image forgery detection and localization, and the consequent development of Photoholmes, a novel open-source Python library. We begin the works by laying the groundwork on which image forensics is based, starting from how a digital image is acquired and how we can model the traces left by the different steps, defining what constitutes a forgery and how they can be theoretically detected, and a brief introduction to deep learning. With a basic understanding of the subject matter, we present a collection of datasets and metrics selected from the literature, diving into the details of how the different choices might impact the performance analysis of a method. We later introduced a selection of ten forgery detection methods, chosen for their uniqueness, performance, and relevance, where we include a brief description of how each method works and what biases we should expect when running and evaluating them. To ensure a fair and reproducible evaluation, we developed PhotoHolmes. PhotoHolmes is an open-source Python library that compiles the previously mentioned methods, datasets, and metrics. Additionally, it includes functionalities to run and evaluate methods easily. The library is designed to be easily extensible, with the aim of keeping it up to date with the state of the art as it progresses. Using PhotoHolmes, we thoroughly evaluated the methods selected across the datasets. By analyzing the results, we identified the methods’ strengths, weaknesses, and quirks.


Detalles Bibliográficos
2024
Forgery detection
Image forensics
Splicing
Copy-move
Python library
Inglés
Universidad de la República
COLIBRI
https://hdl.handle.net/20.500.12008/44418
Acceso abierto
Licencia Creative Commons Atribución - No Comercial - Sin Derivadas (CC - By-NC-ND 4.0)