Skip to content

Omoshirokunai/holmes2

Repository files navigation

Holmes2

GitHub GitHub repo size

The open source home for digital image foresnics and analysis tools

Table of contents

General info

Holmes2 is designed to be a home for digital image forensics tools that is simple to extend with the aim of creating a platform for researchers and forensic experts to experiment and showcase various digital image forensics algorithms.

This project is my undergrad final project and i initially intended it to be an automated tool for detecting forgery then i realised i didnt have the time for that task, so i decided to pivot to make holmes more of a toolkit. Although the project has not relationship with a similar but more complete project called sherloq, I think thanks to streamlit it should be a lot easier to contribute new algorithms.

Note: Holmes is not meant to be an automated tool for deciding if an image if foreged or not. Holmes is still lacking UI polish, and several issues.

Available features

  • Exif viewer
  • Quantization tables matching(not yet complete)
  • Error level analysis
  • Noiseprint by grip-unina

Technologies

Project is created with:

  • python: 3.8
  • streamlit

Setup

To run this project

install necessary pip libraries

 pip install -r requirements.txt

To run holmes in browser

streamlit run holmes.py

File structure

  • Holmes.py: is the main script, which contains streamlit page setup and page navigation

  • Every other module should be named after what they accomplish.

TODO

  • Using quantization tables from jpeg images we can classify the origins of an image.
  • Imporve file structure
  • UI changes

issues

  • Currently runing noiseprint in an unpythonic fashion.

Releases

No releases published

Packages

No packages published

Languages