SkillAgentSearch skills...

PainterPython

Python implementation of Aaron Hertzmann's Painterly Rendering with Curved Brush Strokes of Multiple Sizes (SIGGRAPH 98)

Install / Use

/learn @manuelladron/PainterPython
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

painterPython

Python implementation of Aaron Hertzmann's Painterly Rendering with Curved Brush Strokes of Multiple Sizes (SIGGRAPH 98). Official Java implementation can be found at Aaron Hertzmann's github. Thanks to Aaron for feedback and original code.

Link to the paper

Aaron Hertzmann. Painterly Rendering with Curved Brush Strokes of Multiple Sizes. Proc. SIGGRAPH 1998. Project Page, ACM paper link

Installation

The only dependencies this code needs are Numpy, OpenCV and Scipy

Using PIP

$ pip install numpy 
$ pip install opencv-python 
$ pip install scipy

Using Conda

$ conda install numpy 
$ conda install -c conda-forge opencv
$ conda install -c anaconda scipy

To Run

Open terminal and use

python paint.py source_image [--maxLength MAX STROKE LENGTH][--minLength MIN STROKE LENGTH][--resize][--threshold]
[--brush_sizes 8,4,2][--blur_fac BLUR FACTOR][--grid_fac GRID FACTOR][--length_fac LENGTH FACTOR][--filter_fac 
FILTER FACTOR]

Source Image

tomato

Painting level 0 level0

Painting level 1 level1

Painting level 2 level2

Source Image

huanshan

Painting level 0 hlevel0

Painting level 1 hlevel1

Painting level 2 hlevel2

Source Image

huanshan

Painting level 0 hlevel0

Painting level 1 hlevel1

Painting level 2 hlevel2

Source Image

huanshan

Painting level 0 hlevel0

Painting level 1 hlevel1

Painting level 2 hlevel2

View on GitHub
GitHub Stars15
CategoryDevelopment
Updated4mo ago
Forks0

Languages

Python

Security Score

87/100

Audited on Dec 1, 2025

No findings