Coder Social home page Coder Social logo

thesis_ds's Introduction

Hand based verification using deep learning

Repository description

This repository is made for the Thesis of Sander Hansen for the Master Information Studies with the Data Science Track.

The code found in this repository is the code used for this thesis. Next to the code you will find some instructions on how to use certain scripts.

Data preparation

  • This can be used to replicate the exploratory data analysis
  • The 11K hands dataset can be found here.
  • Place the dataset in ROOT/dataset/11k_hands/
  • Execute script 1 to resize the images
  • Execute script 2 to place the images in a folder per identity and remove accessories, nailPolish and irregularities
  • Execute script 3 create the train, validation and test sets
  • Execute script 4 create the left, right, dorsal and palmar permutations
  • Execute script 5 use this script to create the test pairs, adjust script and use folder for a permuation in line 19 and 49
  • Execute script 6 use this script to create the demographic colour training and test sets
  • Execute script 7 use this script to create the demographic gender training and test sets
  • Execute script 8 use this script to create the demographic gender training and test sets
  • Execute script 4 use this script to create the test pairs, adjust script and use folder for a permuation in line 19 and 49

Facenet

These instructions are made to work with the LISA cluster.

  • Use the FaceNet version which can be found here
  • Install dependencies from requirements.txt
  • Set the pythonpath export PYTHONPATH=[...]/facenet/src

Experiments

All commands to start the jobs for training and testing can be found in the Job Scripts folder

Create results graphs

Four different scripts can be used to create the results graphs. The files to create these graphs are created when using the adjusted version of FaceNet.

accuracy_graph can be used to create the accuracy graphs from the training phase from the files saved in ./facenet_run/logs/facenet/ the log folders should be renamed to start with perm_1 or one of the other permutations to make the graphs. demo_accuracy_graph.py does the same but for the demographic groups, these should start with skin_color_dark, skin_color_very_fair, gender_male, gender_female and age_old to create the right grahps.

roc_curve creates ROC graphs from results saved in ./facenet_run/results/facenet/ and these folders with test results should be named perm_NUMBER_NETWORKNAME with NUMBER and NETWORKNAME replaced with 1,2,3,4 and classifier_nopretrain, classifier_pretrain, triplet_nopretrain, triplet_pretrain. demo_roc_curve can be used to do the same for the demographic group experiments and the folders in in results/facenet should be named age_old, gender_male, gender_female, skin_color_dark, skin_color_very_fair.

Models

The pre-trained models used for this research can be downloaded here and here for the classifier and triplet modes respectively.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.