The ejectamenta texture maker software lets you create a repeating pattern from a single image. This is useful to create wallpaper or as a texture to be mapped to surfaces or just to create interesting patterns.
To create a repeating pattern the edges of the image have to be similar to each other, for instance the top edge should mirror the bottom edge and likewise for the left and right edges. The corners need to mirror all the other corners. We talk as the image to be repeated being the unit cell, in our case we are doing a 2D translation of the image to form the pattern.
You can design a pattern so that the pattern at the edges is continuous from bottom to top and the whole pattern then appears as a completely unified design. You can for instance leave the edge of the images blank and just have the design in the center of the unit cell, but this doesn’t make a very interesting pattern! It is better to draw parts of the design beyond the boundaries of the image and mapping these parts back to the unit cell (providing there is empty space at the other edge).
This software attempts to make a pattern from an arbitrary image by mixing or blending the pixel information at the edge of the images (you can choose how much of the edge is to be blended) from left to right and top to bottom. Its a simple algorithm that can only really work with semi-random textures, however it is still possible to create some interesting patterns. Once the texture image has been made it can be repeated in a grid pattern to see how good the texture looks. If you right click on the pattern you can save the image to disk.
Of course it is a pretty basic technique but useful for random textures. I will update it at a later date to use a wavelet pyramid technique and include it in the image processing application I am working on.
here is an example of an image and the repeated pattern it has been blended using 15% of the image edge.
Original Image | Repeating 4 by 4 pattern of the image |