Coder Social home page Coder Social logo

detkov / person-verification-with-super-resolution Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 1.0 157.85 MB

The goal is to understand whether Person Verification works better with a preliminary application of Super-Resolution or not

Jupyter Notebook 57.45% Python 42.55%
super-resolution machine-learning generative-adversarial-network convolutional-neural-networks neural-networks image-processing face-verification face-recognition face-detection

person-verification-with-super-resolution's Introduction

Person Verification with Super-Resolution

Introduction

Let's assume that there are two photos of people in front of us, and we need to determine if the same person is depicted in the photos or not. Also suppose that we have an algorithm for verifying the person which answers this question.

Problem

We want to find out if it is possible to improve the quality of Person Verification with a preliminary application of Super-Resolution.

Thus, we want to confirm the hypothesis of the possibility of improving the quality of Person Verification with a preliminary application of Super-Resolution.

Since we don't know which metric is the best to use and this is a binary classification problem (1 โ€” the same person, 0 โ€” different persons), we take Accuracy, Precision, Recall, F1 and entire Confusion Matrix metrics just in case.

The main part

We took the Labeled Faces in the Wild dataset for our experiments. Then we prepared 834 pairs of faces of the same person and 834 pairs of different persons. A total of 1,668 pairs - we thought that would be enough for a primary research with our computational resources constraints.

Then, we tested the verification algorithm on the obtained data, saved the results, and began to search through all of the available pre-trained Super-Resolution algorithms. We managed to reproduce and run some of them, but many failed for various reasons.

After obtaining upscaled images, we applied the verification algorithm and inserted the metrics' values into the benchmark.

Since we did not know which metric is the most important, we introduced a new one - Rank, which shows Accuracy, Precision and Recall together and suitable for our purpose. It equals the sum of indices of Accuracy, Precision and Recall when sorting by them.

Result

Following benchmark clearly confirms the hypothesis:
Drag Racing

In fact, the metrics values are very interesting for further research.
For a more complete research, a larger dataset and more models trained specifically on people's faces are needed.

There are no resulting images in the repository, if necessary, you can restore most of the results using this, and then notebook's (Whole pipeline.ipynb and Files fixes.ipynb) from the repository.

Papers and repositories used in research (only those that gave the result)

Thanks to papers with code.

Team members

Nikita Detkov, Ilya Liyasov, Tanya Vasilyeva.

person-verification-with-super-resolution's People

Contributors

detkov avatar

Watchers

 avatar  avatar

Forkers

literman

person-verification-with-super-resolution's Issues

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.