Freedom report

Two barsScore 5.3

  • Free tierA free tier is on its own pricing page
  • Open codeNo open-source code on record
  • Runs widely1 of 6 device platforms
  • DocumentedPlans, terms and facts published

photomosaic is a free, open-source Python package for building a large image out of smaller images from a tile collection. Viewed from a distance, the assembled tiles form the target photograph. The package supports layouts with different tile sizes, including irregular placement and overlap. It can use smaller tiles in detailed regions, and a mask can guide the partition so it roughly follows an outline. For color matching, photomosaic can adjust the target palette to the colors present in the tile pool. It also uses colorspacious for perceptually accurate matching. The package can retrieve tile images from Flickr search results or albums through Flickr’s public API. Downloaded images come with JSON attribution information. Search queries can be filtered by license, while album downloads do not programmatically check licenses. The documentation suggests that a pool of about 300 images is typically the minimum for good results. Install it with pip; the installation page specifies Python 3.5 or later. An optional parallel extra provides experimental parallelism features. Users can also experiment with custom tile partitioning, color characterization, matching, and drawing strategies. The project supports custom tile libraries and tile reuse controls, and can output PNG or JPG files.

Who it is for

photomosaic suits Python users who want to create image mosaics from their own tile collection, with control over tile layout, color matching, and partitioning. It may also suit users who want Flickr-sourced tiles and accompanying attribution information.

What is good

  • Supports mixed-size tiles and irregular or overlapping layouts.
  • Can use smaller tiles in high-detail regions.
  • Adapts target colors to the available tile pool.
  • Flickr downloads include JSON attribution information.
  • Supports custom tile libraries and tile reuse controls.
  • Can export PNG and JPG images.

What to know first

  • Good results typically require about 300 tile images.
  • Flickr album downloads do not programmatically check licenses.
  • Parallelism features are described as experimental.

Verdict

Choose photomosaic if you want an open-source Python package with flexible tile layouts and customizable image-matching strategies. Its Flickr search downloads can be filtered by license and include attribution data. Users relying on album downloads should account for the fact that those downloads do not programmatically check licenses.

Get started with photomosaic

  1. Install the package with pip.
  2. Use Python 3.5 or later.
  3. Gather a tile image pool; the documentation suggests about 300 images as a typical minimum.
  4. Optionally install the parallel extra for experimental parallelism features.
  5. Use a tile collection or download images from Flickr search results or albums.
  6. Create and save the mosaic as PNG or JPG.

Questions about photomosaic

Is photomosaic free?

Yes. Its pricing model is free, and the project is open source.

What Python version does it require?

The installation page specifies Python 3.5 or later.

Can it download tile images from Flickr?

Yes. It can download from Flickr search results or albums using Flickr’s public API.

Does it check licenses for Flickr downloads?

Flickr search queries can be filtered by license. Album downloads do not programmatically check licenses.

What output formats does it support?

PNG and JPG.

What license does the project use?

The GitHub repository identifies the project license as BSD-3-Clause.

photomosaic plans and pricing

All plans
photomosaic Free Python package; install with pip or from source danielballan.github.io · 9 Oct 2026

Compared on photo mosaic software

Custom tile library
Yes
Tile reuse controls
Yes
Output formats
PNG, JPG

Best photomosaic alternatives

See all 20