
phomo
Summary
phomo is a free software tool for creating photographic mosaics. It arranges tile images to recreate a master image by comparing color distributions in tiles and regions, then assigning tiles to regions with a linear sum assignment algorithm. You can install it with pip as a Python package or use the `phomo` command with a master image and a directory of tiles. Its CLI offers cropping and resizing controls for master and tile images, black-and-white conversion, grid display, and a setting for how often tiles appear. Matching choices include greyscale, norm, and luv_approx distance metrics, color equalization, and color-distribution matching. A greedy assignment option can improve performance but trades away accuracy. CUDA acceleration is available through an extra and requires a compatible GPU and CUDA toolkit. The package requires Python 3.9 or later and below 3.13, runs on Linux, macOS, and Windows, and outputs PNG. It is published under the MIT License.
Who it is for
phomo suits people who want to create image mosaics from their own tile libraries and are comfortable using Python packages or command-line tools. CUDA acceleration is an option for users with a compatible GPU and toolkit.
What is good
- Free Python package and command-line utility
- Runs on Linux, macOS, and Windows
- Offers several color-matching options
- Tile appearance count can be controlled
- CUDA acceleration is available as an extra
What to know first
- Requires Python below version 3.13
- CUDA acceleration requires compatible hardware and toolkit
- Greedy assignment trades accuracy for performance
Verdict
phomo provides both command-line and Python-package access to photographic mosaic creation, with controls for image preparation and tile matching. Its fit depends on comfort with Python or command-line use, and CUDA acceleration has additional requirements.
phomo plans and pricing
All plansCompared on photo mosaic software
- Free plan
- Yesgithub.com
- Platform
- desktopgithub.com
- Custom tile library
- Yesgithub.com
- Tile reuse controls
- Yesgithub.com
- Output formats
- PNGgithub.com
Facts
- Purpose
- phomo creates photographic mosaics by arranging tile images to recreate a master image.github.com · 3 Oct 2026
- Tile matching
- It compares tile images with master image regions using color distribution differences, then assigns tiles to regions with a linear sum assignment algorithm.github.com · 3 Oct 2026
- Python package
- The project can be installed with pip and used as a Python package.github.com · 3 Oct 2026
- Command line
- The package provides a `phomo` command that accepts a master image and a directory of tile images.github.com · 3 Oct 2026
- GPU support
- GPU acceleration is available through the CUDA extra and requires a CUDA-compatible GPU and CUDA toolkit.github.com · 3 Oct 2026
- Image controls
- CLI options include cropping and resizing the master and tile images, black-and-white conversion, grid display, and tile appearance count.github.com · 3 Oct 2026
- Matching options
- The CLI offers greyscale, norm, and luv_approx distance metrics, color equalization, and options to match color distributions.github.com · 3 Oct 2026
- Performance option
- A greedy tile assignment option is described as improving performance at the expense of accuracy.github.com · 3 Oct 2026
- Platforms
- PyPI lists macOS, Windows, and Linux operating system classifiers for the package.pypi.org · 3 Oct 2026
- Python versions
- PyPI states that the package requires Python >=3.9 and <3.13.pypi.org · 3 Oct 2026
- License
- The project is published under the MIT License.github.com · 3 Oct 2026
- Maintainer
- PyPI identifies Loic Coyle as the author and lists one maintainer.pypi.org · 3 Oct 2026
Best phomo alternatives
See all 12Where it ranks on Everything Xiaomi
Is phomo yours?
Claim it for free: prove the domain, then correct facts, plans and screenshots. An editor reviews every change.
Sources
- github.com/loiccoyle/phomo· checked 3 Oct 2026
- pypi.org/project/phomo/· checked 3 Oct 2026
