Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Logo

pyaesthetics

GitHub release PyPI PyPI pyversions PyPI status Documentation Status DOI

Pyaesthetics (formlerly known as PrettyWebsite) is a python package designed to estimate visual features concerning the aesthetic appearance of a still image.

Features

The module can estimate the following features:

  • Brightness (in both the BT709 and BT601 standards)
  • Visual Complexity (either by using the weight of the image or by Quadratic Tree Decomposition)
  • Simmetry (using Quadratic Tree Decomposition)
  • Colorfulness (in both the HSV and RGB color spaces)
  • Presence and number of human faces
  • Color distribution
  • Number of images within the image
  • Surface of visual and textual areas within the image
  • Ratio between visual and textual areas

Installation

pyaesthetics can be installed using pip:

pip install pyaesthetics

or manually by downloading or cloning the repository and, from the root folder of the project, running:

python setup.py pyaesthetics

Example

pyaeshtetics modules can be used one at the time to estimate one specific feature, or they can be automatically called using an automated entrypoint that calls all the available modules at once.

Example 1: one single feature (e.g. Brigthness BT601)

#load only the neede functions from the specific module
from pyaesthetics.brightness import relativeLuminance_BT601, sRGB2RGB
import cv2 #to open and handle images

img = "/path/to/image/image.jpg" #path to a sample image

img = cv2.imread(img) #load the image
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) #convert to the RGB colorscheme
img = sRGB2RGB(img) #convert pixels to their linear RGB values
print(relativeLuminance_BT601(img)) #evaluate luminance on the BT601 standard

Example 2: Complete analysis

import pyaesthetics
img = "/path/to/image/image.jpg" #path to a sample image
results = pyaesthetics.analyzeImage(img) #perform all the availabe analysis using standard parameters
print(results)

Documentation

You can check the full documentation here: https://pyaesthetics.rtfd.io (not available yet)

Requirements

  • Numpy
  • Scipy
  • Matplotlib

Contacts

Feel free to contact me for questions, suggestions or to give me advice as well at: giulio001@e.ntu.edu.sg or giulio@duck.com

Scientific Publications using pyaesthetic

  • Gabrieli, G., Bornstein, M. H., Setoh, P., & Esposito, G. (2022). Machine learning estimation of users’ implicit and explicit aesthetic judgments of web-pages. Behaviour & Information Technology, 1-11.

Sponsors

The project has been sponsored by Gitkraken.

Coffee?

Buy Me a Coffee at ko-fi.com