This program can generate an image that when seen from a distance look like a different picture but from up close it's actually made up of a small photo arranged in a grid.
The program takes two input images, first a block image that is used as an element in the matrix and the second a big image that is implemented over the matrix. It's recommended that input images should be small in size as it will be easier to build the mosaic in a correct proportion.
Block image(32X32)
Big image(40X30)
Output of this program will be a matrix of block images and the final mosaic.
Simple matrix(1280X960)
Mosaic(1280X960)
(Take a few steps back from the screen and look at this picture)
Feel free to build over my code and use it wisely