unraphael
Python toolkit for unraveling image similarity with a focus on artistic practice
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.5%) to scientific vocabulary
Keywords
Repository
Python toolkit for unraveling image similarity with a focus on artistic practice
Basic Info
- Host: GitHub
- Owner: DecodingRaphael
- License: apache-2.0
- Language: Python
- Default Branch: main
- Homepage: https://unraphael.readthedocs.io
- Size: 23.2 MB
Statistics
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 1
- Releases: 4
Topics
Metadata Files
README.md

Unraphael
Unraphael is a digital workflow tool that uses computer vision to unravel the artistic practice of Raphael (Raffaello Sanzio, 1483-1520), while providing new digital approaches for the study of artistic practice in art history. Dozens of faithful reproductions survive of Raphael's paintings, attesting to the lucrative practice of serial production of paintings within the artist's workshop and to the lasting demand for the master's designs.
Unraphael provides a flexible and easy-to-use GUI to inspect and assess the structural similarity of figure-outlines in images. Photographs of paintings are used as input for the application.
While Unraphael was made for art historians and researchers in the humanities to study the artistic practices of and the process of making copies of paintings, the functionality of Unraphael extends well beyond the study of Raphael's paintings and can be used for a wide range of applications in the digital humanities and beyond.
Features: - Image preprocessing - Background removal - Image alignment - Image clustering based on structural similarity - Ratio analysis painting - photo dimensions
To install:
console
pip install unraphael
Try unraphael in your browser!
You can also try unraphael directly from your browser.
| Link | Description | Image |
|---|---|---|
| Image similarity | Group your images using cluster analysis | ![]() |
| Image preprocessing | Preprocess your images, e.g. background removal, color adjustments, applying image filters, segmentation | ![]() |
| Object detection | Quickly and accurately identify and segment figures or objects within an image to analyse the isolated components | ![]() |
| Image comparison | Compare your images based on their structural components | ![]() |
Using the unraphael dashboard locally
To install and use the dashboard locally:
console
pip install unraphael[dash]
unraphael-dash
Development
Check out our Contributing Guidelines to get started with development.
Suggestions, improvements, and edits are most welcome.
Self hosted deployment
To run on dashboard with:
```shell sudo apt-get update && apt-get install libgl1 libglib2.0-0 -y
As www-data user
python3 -m venv venv pip install 'unraphael[dash]@git+https://github.com/DecodingRaphael/unraphael.git@0.3' ```
Systemd service
To run unraphael as a service, you can create a systemd service file. This will allow you to start, stop, and restart unraphael using systemd. 1. Create a service file for unraphael, for example `/etc/systemd/system/unraphael.service`: ``` [Unit] Description=Unraphael dashboard After=network.target [Service] Environment="XDG_CACHE_HOME=/cache/dir" HOME="/writable/dir" User=youruser WorkingDirectory=/home/youruser ExecStart=/home/youruser/.local/bin/unraphael-dash Restart=on-failure User=youruser WorkingDirectory=/home/youruser ExecStart=/home/youruser/.local/bin/unraphael-dash Restart=on-failure [Install] WantedBy=multi-user.target ``` Replace `/cache/dir` and `/writable/dir` with the actual paths to your cache and writable directories. Replace `youruser` with your actual username. Also, make sure that the path to `unraphael-dash` is correct. You can find the correct path using `which unraphael-dash`. 2. Enable the service: ```console sudo systemctl enable unraphael.service ``` 3. Start the service: ```console sudo systemctl start unraphael.service ``` 4. Check the status of the service: ```console sudo systemctl status unraphael.service ``` 5. To stop the service: ```console sudo systemctl stop unraphael.service ```Owner
- Name: DecodingRaphael
- Login: DecodingRaphael
- Kind: organization
- Repositories: 1
- Profile: https://github.com/DecodingRaphael
Decoding Raphael: Computational Study of the Production and Reproduction of Italian Renaissance Paintings
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: Unraphael
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Thijs
family-names: Vroegh
affiliation: Netherlands eScience Center
orcid: 'https://orcid.org/0000-0002-6311-0798'
- given-names: Stef
family-names: Smeets
affiliation: Netherlands eScience Center
orcid: 'https://orcid.org/0000-0001-5107-3531'
repository-code: 'https://github.com/DecodingRaphael'
url: 'https://unraphael.readthedocs.io'
abstract: >-
Python toolkit for unraveling image similarity with a focus on artistic
practice
keywords:
- art
- raphael
- computer-vision
- renaissance
identifiers:
- type: doi
value: 10.5281/zenodo.11192044
license: Apache-2.0
version: 0.1.0
GitHub Events
Total
- Create event: 7
- Release event: 1
- Issues event: 18
- Delete event: 8
- Member event: 1
- Issue comment event: 7
- Push event: 41
- Pull request review comment event: 2
- Pull request review event: 8
- Pull request event: 11
Last Year
- Create event: 7
- Release event: 1
- Issues event: 18
- Delete event: 8
- Member event: 1
- Issue comment event: 7
- Push event: 41
- Pull request review comment event: 2
- Pull request review event: 8
- Pull request event: 11
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 10
- Total pull requests: 6
- Average time to close issues: 5 months
- Average time to close pull requests: about 2 months
- Total issue authors: 2
- Total pull request authors: 2
- Average comments per issue: 1.4
- Average comments per pull request: 0.0
- Merged pull requests: 5
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 5
- Pull requests: 5
- Average time to close issues: 3 months
- Average time to close pull requests: 25 days
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 0.4
- Average comments per pull request: 0.0
- Merged pull requests: 4
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- ThijsVroegh (23)
- stefsmeets (21)
Pull Request Authors
- stefsmeets (32)
- ThijsVroegh (11)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 14 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 3
- Total maintainers: 1
pypi.org: unraphael
Decoding Raphael: Computational Study of the Production and Reproduction of Italian Renaissance Paintings.
- Documentation: https://unraphael.readthedocs.io/
- License: MIT License
-
Latest release: 0.2.1
published about 2 years ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v4 composite
- actions/setup-python v5 composite
- pre-commit/action v3.0.1 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- pypa/gh-action-pypi-publish release/v1 composite
- actions/cache v4 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- schneegans/dynamic-badges-action v1.7.0 composite
- PyYAML *
- matplotlib *
- numpy *
- opencv-contrib-python *
- opencv-python ==3.4.2.16
- pyssim ==0.4
- scikit-image ==0.14.1
- scikit-learn ==0.20.0
- scipy ==1.1.0
- IPython *
- Pillow *
- detectron2 *
- matplotlib *
- numpy *
- opencv *
- roboflow *
- scikit-image *
- tensorflow *
- torch *
- numpy *
- opencv-python-headless *
- rembg *
- scikit-image *
- scipy *
- seaborn *
- streamlit *
- PyYAML *
- numpy *
- opencv-python-headless *
- rembg *
- scikit-image *
- scipy *
- attrs ==23.2.0
- certifi ==2024.6.2
- charset-normalizer ==3.3.2
- coloredlogs ==15.0.1
- flatbuffers ==24.3.25
- humanfriendly ==10.0
- idna ==3.7
- imageio ==2.34.1
- jsonschema ==4.22.0
- jsonschema-specifications ==2023.12.1
- lazy-loader ==0.4
- llvmlite ==0.42.0
- mpmath ==1.3.0
- networkx ==3.3
- numba ==0.59.1
- numpy ==1.26.4
- onnxruntime ==1.18.0
- opencv-python-headless ==4.10.0.82
- packaging ==24.0
- pillow ==10.3.0
- platformdirs ==4.2.2
- pooch ==1.8.1
- protobuf ==5.27.0
- pymatting ==1.1.12
- pyyaml ==6.0.1
- referencing ==0.35.1
- rembg ==2.0.57
- requests ==2.32.3
- rpds-py ==0.18.1
- scikit-image ==0.23.2
- scipy ==1.13.1
- sympy ==1.12.1
- tifffile ==2024.5.22
- tqdm ==4.66.4
- urllib3 ==2.2.1



