• Stars
    star
    216
  • Rank 182,494 (Top 4 %)
  • Language
    Python
  • License
    MIT License
  • Created almost 6 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Extracts dominating colors from an image and presents them as a palette.


ColorPalette

A simple web app to extract dominant colors from an image.

MIT License prs welcome

Demo

Live

View it live at : https://colorpalettedemo.herokuapp.com/

You can deploy your own instance on heroku by clicking the following button

Deploy

What it do

Extracts 10 dominating colors from the image and adds the palette to the bottom of the image (inspired by colorpalette.cinema). You can adjust the palette height, outline color, and width to match your image dimension. Another independent image of the palette with the hex codes of colors is also generated.

The app does not depend on any APIs for extracting colors. color.py contains the code for it with Pillow as the only dependency.

Some samples

  1. Photo by Luka Odak on Unsplash



  1. Photo by Alexandre Chambon on Unsplash



  1. Photo by Federica Diliberto on Unsplash



  1. Photo by Ashim D’Silva on Unsplash



Directory Structure

|-- Procfile
|-- README.md
|-- app.json
|-- colorpalette
|   |-- __init__.py
|   |-- color.py
|   |-- forms.py
|   |-- routes.py
|   |-- static
|   |   |-- css
|   |   |-- font
|   |   |-- images
|   |   |   |-- favicon
|   |   `-- js
|   `-- templates
|       |-- 413.html
|       |-- base.html
|       |-- index.html
|       `-- picture.html
|-- config.py
|-- requirements.txt
|-- run.py    
`-- LICENSE

Run locally

  1. Clone the repostory:
git clone https://github.com/makkoncept/colorpalette.git
  1. Navigate to the project root and create a virtual environment:
python3 -m venv venv
  1. Activate the virtual environment:

Linux:

source venv/bin/activate

Windows cmd:

venv\Scripts\activate.bat
  1. Install requirements:
pip install -r requirements.txt
  1. Run the development server:
python run.py
  1. View on localhost:5000

Attribution

Icon made by Freepik from www.flaticon.com