Whose Art Is It?

Overview

This was a final project output for our Data Applications and Web Development course under Sir Eduardo David in the M.Sc. Data Science program. The goal of the project is to deploy a Machine Learning or Deep Learning model to a simple web application using flask. The model used for this project is based on the code of github.com/SupratimH/DeepArtist.

Description

In the age of the internet, digital copies of art and paintings have become extensive - from the works of old masters to creations of modern painters. This online presence of artwork is important for art collectors, educators, and students alike for convenient viewing and analysis of pieces from our history. An accurate way to automatically classify paintings will help museums, curators, or collectors quickly organize digital collections. This will also help consumer art appreciators to quickly gain information and insights about a certain painting they are curious about.

This web app can identify paintings as old as 1471 with styles ranging from renaissance, romanticism, baroque, impressionism, and post-impressionism. This can also classify a modern painting and see whose style it most resembles to.

Web App

Here's a screen recording video of how it works:

You can choose an image file of any painting from your desktop/device.

Upon clicking the Reveal Artist button, it would tell you who the artist is. The deep learning model might take a few seconds to preidct but it will also show you the accuracy of the classification.

Try it yourself!

If you want to try it, you can find the files in my GitHub.

How to run it
Download all the files and folders from my repository and save them together in just one local folder. In your terminal, cd into the directory where you saved them and run the following:

  • FLASK_APP=app_flask.py
  • FLASK_ENV=development
  • flask run

    If you can’t get it to work, try running set FLASK_APP=app_flask.py and set_FLASK_ENV=development instead before flask run.

    For mac users, you can try running export FLASK_APP=app_flask.py instead and retaining the next 2 lines of codes.

Then go to 127.0.0.1:5000 on your browser.

Acknowledgements

I would like to thank my friends Kyle Ong, Raph Ongleo, and Jeddah Gracera for their patience in explaining JavaScript to me. Without it, I wouldn't have been able to build this project.