halftone-gradient / README.md
klich's picture
Update README.md
8e2aacb verified
---
title: Halftone Gradient
emoji: πŸ‘
colorFrom: yellow
colorTo: indigo
sdk: gradio
sdk_version: 5.17.1
app_file: app.py
pinned: false
---
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
Halftone Effect App
This application allows users to apply a halftone effect to an image using different shapes such as circles, squares, or triangles. The halftone effect is a technique that simulates continuous tone imagery through the use of dots, varying in size and spacing.
Requirements
To run this app, you need to have Python installed along with the following libraries:
Gradio
Pillow
You can install these libraries using pip:
pip install gradio Pillow
Usage
Upload an image using the interface.
Select a shape type (circle, square, or triangle) from the dropdown menu.
View the output image with the applied halftone effect.
How it Works
The halftone effect is achieved by:
Converting the input image to grayscale.
Creating a grid over the image with a specified spacing (default is 10 pixels).
For each grid point, calculating the grayscale value (brightness) at that point.
Determining the size of the shape based on the grayscale value: darker areas get larger shapes, lighter areas get smaller or no shapes.
Drawing the selected shape (circle, square, or triangle) at each grid point with the calculated size.
Parameters
grid_spacing: Controls the density of shapes. Smaller values create denser patterns but may slow processing. Default is 10 pixels.
max_size: Ensures shapes don't overlap too much. Adjust as needed for desired effect. Default is 8 pixels.
Notes
The app is built using Gradio, which provides a user-friendly web interface.
For large images or small grid_spacing, processing may take longer. Adjust parameters for faster results.
Future enhancements could include adjustable parameters via sliders, colored shapes, or additional shape types.