Painting Classification

Labeling artists and styles of fine-art paintings has become increasingly important for art preservation, categorization, and development of virtual Museums. While CNNs have been popularly used for classifying various images, the combination of a CNN-feature extractor followed by a Gradient Boosting classifier appears as a novel high-performance and fast method classifying various attributes of an image simultaneously, facilitating processing large amounts of images and data. The project attempts to classify two fundamental attributes of a painting – artist and style – using this approach via two variants of CNN feature extraction- VGGNet16 and ResNet50. The project finds that the hybrid ResNet50-XGBoost, the deeper of the two networks, method captures the data better than the VGGNet16-XGBoost method with a classification accuracy of around 78% over 73% for artists and 55% over 52% for painting styles; suggesting better suitability of deeper networks for such tasks.

Data Source: Kaggle Competition (Painters by Numbers:

Teammates: Pranav Manjunath, Xinyi Pan, Maobin Guo

Mentor: Prof. Kyle Bradbury


Python, Keras, Pytorch, AWS S3, ResNet50, VGG16