Starry Night – Photomosaic

The Starry Night
Starry Night

This puzzle has been ridiculously challenging. I had to look at ‘the picture’ – a fold out photo of the puzzle included in the box – for nearly every piece. It is a very nice photo mosaic puzzle. There are hundreds of small pictures of the United States space program. From men walking on the moon, to space shuttle team photos, to rockets launching, to splash downs in the ocean, to pictures of the atmosphere, this puzzle has it all. There are 62 x 46 or 2852 small pictures.

Actual Painting in the Museum of Modern Art


Python photo mosaic – for starters

Update – November 24th, 2015

My Github repository for this project: Photomosaic on Github. While trying to get the color enhanced a bit, I’ve tried several different mosaic programs, so don’t get confused. The working program for windows is


Good news on my mosaic program, I got the run-time down from 55 minutes to 3 seconds with some tweaking. The 3 seconds is for a picture 375 x 210 pixels. I also tried a full size 3264 x 2448 pixel photo, it took about 3 and a half minutes to finish. Today I implemented an idea on the project, it seems to bring a bit more color into the mosaic and looks a little more real.

375 x 210 pixel photo:


A larger photo: Long’s Peak

Long’s Peak Original:

Original Post:

How is everyone doing on this Thursday evening? I trust all are doing well and having a good summer.

I am very happy that I got my mosaic project to work today. I was able to output a mosaic from a given photo. The color matching is not yet accurate; however, it does fill in the picture with pictures from the picture database. Yes! – although it is a very preliminary version of the program and took about 55 minutes to run. Yikes! Below is the original picture, my version of the photo mosaic, and the way the mosaic should look.


My Version:

The way it should look:

I got the idea to do this project from someone who had posted a programming help wanted ad on one of the freelance programming sites. Apparently he wanted someone else to do his homework. Anyway, I got the details and decided to give it a try. Here is the original problem.