fractal-mosaics/README.md

43 lines
3.1 KiB
Markdown
Raw Normal View History

2013-04-25 14:39:40 -07:00
Fractal-Mosaics
===============
2013-04-30 15:48:38 -07:00
Fractal Mosaics is a rotation, scale, and translation invariant photomosaic algorithm (i.e., the images can be placed at arbitrary locations, can be scaled to any size, and can be rotated by any angle).
2013-04-30 15:46:54 -07:00
2013-05-01 15:03:55 -07:00
The figure below shows a Fractal Mosaic and traditional photomosaic made using the same target image and image set.
2013-05-01 15:03:40 -07:00
![Photomosaic New Algorithm Fractal Eye](https://raw.github.com/s-ben/Fractal-Mosaics/gh-pages/images/fractal_trad_compare.png?login=s-ben&token=174f9368670265a272b500a411d902da)
2013-04-30 15:46:54 -07:00
2013-07-02 23:26:21 -07:00
For a detailed description of the algorithm, see my adademic-style "[paper](http://s-ben.github.io/Fractal-Mosaics/)" on it and documentation below.
2013-04-30 15:46:54 -07:00
2013-04-30 15:21:34 -07:00
# Prerequisites
2013-07-02 23:20:33 -07:00
Fractal Mosaics is implemented in Matlab. You’ll need a copy of Matlab with the Signal Processing toolbox - most versions should have the Signal Processing toolbox.
2013-04-30 15:21:34 -07:00
2013-04-30 15:46:54 -07:00
2013-04-30 15:21:34 -07:00
# Getting Started
2013-07-02 23:22:01 -07:00
1. Download the demo example ([zip](https://github.com/s-ben/Fractal-Mosaics/raw/gh-pages/code/fractal_mosaics.zip), [tgz](https://github.com/s-ben/Fractal-Mosaics/raw/gh-pages/code/fractal_mosaics.tgz)).
2013-07-05 12:40:56 -07:00
2. Download the [example image set](https://docs.google.com/file/d/0B_2ApIVBvXm1Y0VMVTVqNUhCaVk/edit?usp=sharing) (9.1 GB database of greyscale images of graffiti).
2013-06-24 23:48:56 -06:00
3. Unpack the zip file containing the example image set and copy its contents into the /library_images folder in the demo example.
2013-07-02 23:35:52 -07:00
4. Navigate to the /m-files directory.
5. Run ‘fractal_mosaic.m’.
2013-04-30 15:21:34 -07:00
Your mosaic is now rendering.
2013-07-02 23:24:54 -07:00
WARNING: it takes a long time to render a mosaic (~10.5 hrs on my macbook pro). If you want to optimize it, please do ;)
2013-04-30 15:21:34 -07:00
2013-07-05 12:47:37 -07:00
The demo example creates a black and white mosaic. This is because color takes ~3X as long. To create a color mosaic, download the color image set and set Fractal Mosaics to color mode (see the [Variables](https://github.com/s-ben/Fractal-Mosaics/wiki/Variables) page for info on this). Due to file size limits in Google Drive, the color image set is divided into two zip files ([image set 1](https://docs.google.com/file/d/0B3M2Bu_2k-QSSnhSVzNWRERtenc/edit?usp=sharing), [image set 2](https://docs.google.com/file/d/0B3M2Bu_2k-QSTkxxbEVGay1Gcjg/edit?usp=sharing)).
2013-04-30 15:21:34 -07:00
# Documentation
2013-07-02 23:32:09 -07:00
* [Fractal Mosaic “paper”](http://s-ben.github.io/Fractal-Mosaics/): academic-style paper explaining how the algorithm works.
2013-07-02 23:30:15 -07:00
* [Wiki](https://github.com/s-ben/Fractal-Mosaics/wiki): details on how to create your own mosaic.
2013-07-02 23:32:09 -07:00
* [Gallery](http://www.flickr.com/photos/travelingseth/sets/72157623789223762/): Flickr page showing finished mosaics.
2013-04-25 14:39:40 -07:00
2013-05-01 14:26:29 -07:00
# Licencing
2013-07-02 23:33:43 -07:00
Fractal Mosaics is licensed under the GNU General Public License ([GPL](http://www.gnu.org/licenses/gpl.txt)). Some functions used in Fractal Mosaics are from the Matlab File Exchange and use the [BSD license](http://opensource.org/licenses/bsd-license.php). This license is "permissive" (can be used for any purpose, commercial or non). If you wish to use Fractal Mosaics for proprietary software, let's talk! (seth.benton@gmail.com)
2013-05-01 14:26:29 -07:00
2013-05-01 14:19:18 -07:00
[![githalytics.com alpha](https://cruel-carlota.pagodabox.com/80d211511c492cf9dce9dd9841acf603 "githalytics.com")](http://githalytics.com/s-ben/Fractal-Mosaics)