This repository contains code, data, and scripts for the paper:
Complexity in Complexity: Understanding Visual Complexity Through Structure, Color, and Surprise
Karahan Sarıtaş, Peter Dayan, Tingke Shen, Surabhi S. Nath
arXiv preprint arXiv:2501.15890, 2025
We present novel interpretable features for visual complexity, combining:
- Multi-Scale Sobel Gradient (MSG) to capture structural intensity variations in images,
- Multi-Scale Unique Color (MUC) to quantify colorfulness at multiple scales,
- Surprise Scores derived from Large Language Models, indicating unusual/surprising objects or contexts.
Using these features alongside existing segmentation/object-based features, we demonstrate improved performance in predicting human-rated visual complexity across multiple datasets.
So, do you want to reproduce our results? Here's how you can do it in a few simple steps:
- Clone and Install
git clone https://github.com/Complexity-Project/Complexity-in-Complexity.git
cd Complexity-in-Complexity
pip install -r requirements.txt
- Run Experiments
Navigate to the linear/analysis.ipynb notebook and execute the first few cells to reproduce the results from the paper, and that's it! This will display the correlations between the regressors and human complexity ratings across all datasets.
We further introduce a new dataset called Surprising Visual Genome (SVG) with surprising images from well-studied Visual Genome dataset along with human complexity ratings, to highlight the role of surprise in complexity judgments. We make this dataset publicly available for further research. Don't forget to cite our paper if you use this dataset in your research.
# Make sure you're inside the Complexity-in-Complexity/ directory
# Then unzip the dataset into the "SVG" folder:
unzip SVG_dataset.zip -d SVG
🤗 Alternatively, you can use our dataset directly from HuggingFace: https://huggingface.co/datasets/Mortdecai/SVG