Learning to Paint is an open-source PyTorch implementation of a deep reinforcement learning system that teaches artificial agents to recreate images through sequential brushstrokes. Based on research presented at ICCV 2019, it combines a learned neural renderer with model-based reinforcement learning. The agent determines stroke positions, shapes, and colors while planning how to approximate a target image. It can reproduce complex visual textures using hundreds of strokes. Training does not require examples of human painting movements or recorded brushstroke sequences. The repository includes pretrained models, alternative brush renderers, and testing scripts. Users can generate painting sequences and convert their frames into videos using FFmpeg. A Google Colab demonstration provides an accessible environment for experimentation.

Features

  • Model-Based Deep Reinforcement Learning Painting
  • Neural Brushstroke Rendering
  • Automatic Stroke Position and Color Selection
  • Pretrained Painting Agents and Renderers
  • Sequential Painting Animation Generation
  • PyTorch and Google Colab Integration

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow ICCV2019-Learning to Paint

ICCV2019-Learning to Paint Web Site

Other Useful Business Software
Veeam Data Platform v13.1 Icon
Veeam Data Platform v13.1

Move workloads across hypervisors and clouds with no vendor lock-in. Try VDP free today.

Try Veeam Data Platform today. Experience the unified platform that's secure by design, portable by default, and proven to recover clean, fast, and anywhere.
Try Now
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of ICCV2019-Learning to Paint!

Additional Project Details

Programming Language

Python

Related Categories

Python Computer Vision Libraries

Registered

6 days ago