Fundamentals 5 min read

Tiler: A Python Tool for Creating Pixel‑Art Mosaics from Small Tiles

Tiler is an open‑source Python project that automatically assembles small graphic elements—such as LEGO bricks, emojis, or custom icons—into large pixel‑art mosaics, offering configurable depth, rotation, color palette, and tile size to produce artworks like Van Gogh's Starry Night or Minecraft‑style scenes.

Python Programming Learning Circle
Python Programming Learning Circle
Python Programming Learning Circle
Tiler: A Python Tool for Creating Pixel‑Art Mosaics from Small Tiles

The project tiler (GitHub: github.com/nuno-faria/tiler ) lets you compose a large image from many tiny tiles—LEGO pieces, symbols, emojis, or custom icons—much like a pixel‑art version of Minecraft.

Available tile sets include basic shapes (plus, circle, @, heart, multiplication sign, wave, bars), Minecraft blocks, and themed collections such as Halloween icons. Each tile’s size, color, and rotation can be adjusted, and you can control the overall mosaic resolution by setting the number of colors and tile size.

Examples shown include three versions of Van Gogh’s Starry Night rendered with circular tiles at 10×10, 25×25, and 50×50 resolutions, as well as LEGO‑brick mosaics and cross‑stitch‑style patterns.

Running the tool

Requirements: Python 3, pip, OpenCV, numpy, and tqdm. After installing dependencies, the tool is operated via the command line.

Key parameters to edit:

DEPTH : number of divisions per colour channel (e.g., DEPTH = 4 yields 64 colours).

ROTATIONS : list of rotation angles in degrees applied to the source image (e.g., [0, 90] ).

COLOR_DEPTH : same concept as DEPTH for the tiler module.

RESIZING_SCALES : scaling factors for each tile (e.g., [1, 0.75, 0.5, 0.25] ).

PIXEL_SHIFT : pixel offset for creating each tile (e.g., (5, 5) ).

OVERLAP_TILES , RENDER , POOL_SIZE , IMAGE_TO_TILE , TILES_FOLDER , OUT : additional options controlling overlap, rendering, multiprocessing pool size, input/output paths, etc.

The author, nuno‑faria , also maintains other open‑source projects such as a Java Sokoban game, a pixel‑style desktop football simulation, and various Tetris‑ and pinball‑style demos.

For more details and to download the source, visit the GitHub repository linked above.

Pythonimage processingOpen-sourceMosaicpixel-arttiler
Python Programming Learning Circle
Written by

Python Programming Learning Circle

A global community of Chinese Python developers offering technical articles, columns, original video tutorials, and problem sets. Topics include web full‑stack development, web scraping, data analysis, natural language processing, image processing, machine learning, automated testing, DevOps automation, and big data.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.