The Buddhabrot Technique

by Melinda Green





I was later pleased to learn that a computer artist named Lori Gardi, who I had described this technique to several years ago, has since devoted a great deal of her creative effort to generating various high-resolution images using the technique. She named it Buddhabrot which is a name I instantly loved and have adopted. Lori's web site contains some reduced examples of her work along with her writings into the mystical connections she's made between the Mandelbrot set and Buddhism.

The above image shows the overall entire Buddhabrot object. To produce the image only requires some very simple modifications to the traditional mandelbrot rendering technique: Instead of selecting initial points on the real-complex plane one for each pixel, initial points are selected randomly from the image region or larger as needed. Then, each initial point is iterated using the standard mandelbrot function in order to first test whether it escapes from the region near the origin or not. Only those that do escape are then re-iterated in a second, pass. (The ones that don't escape - I.E. which are believed to be within the Mandelbrot Set - are ignored). During re-iteration, I increment a counter for each pixel that it lands on before eventually exiting. Every so often, the current array of "hit counts" is output as a grayscale image. Eventually, successive images barely differ from each other, ultimately converging on the one above. I'm the most unreligious person you could ever meet, but it's hard not to think of this image as revealing God hiding in the Mandelbrot Set. And not hiding in some tiny corner, but a single image hiding in plain sight at full-size, suggesting that the Hindus were the ones who got it right.

After a long time generating greyscale images I realized that there is a natural way to use color to display more information within the Buddhabrot images. Notice that basic Buddhabrot images are generated by choosing a "maximum iterations" threshold just as for Mandelbrot images. One main difference between the two techniques is that Buddhabrot images have distinctly different appearances depending on the choice of threshold, whereas the effect of different threshold values for mandelbrot images only changes the amount of black (unresolved) pixels. I realized that I should be able to generate meaningful color Buddhabrot images by generating three basic images that differ only in the choice of threshold values, and then combining those images as the red, green, and blue channels of a single color image. This is exactly the same technique that astronomers use when generating "false-color" images of astronomical objects. For example, see the famous Eagle Nebula images from the Hubble Space Telescope and read the associated descriptions of color astronomomical mages. For my color Buddhabrot images the three different threshold values are analogous to the different frequencies of light which NASA combined into their beautiful false-color images.



After some years I realized how to unify all the Mandel/Julia/Buddhabrot objects and techniques. Click the following link to learn about this interesting extension called the Buddhabrot Hologram.

Still later while exploring different ways to sample and project these sorts of images, one really surprising thing happened: In one particular rendering projected onto one of the six major planes an image ofthe logistic map simply popped out! (There are 6 major planes in 4D just like the 3 in 3D.) This had me puzzled for years until 2009 when Taneli Hautaniemi also found it and contacted me. In 2010, Piet en Gilberte then stepped in and made a beautiful animation showing the relationship and added it along with explaination to the Buddhabrot page on Wikipedia. Thanks, Piet!



Finally, below is a single frame part way through a run generating a low-resolution view of the main figure. Just for fun, I also compiled a set of those frames into an animated GIF file which you can view to see how the image converges over time. Clicking on the image will bring you that animated GIF, but beware since it is over three megabytes which will take a very long time to download completely unless you have a fast internet connection. With a 28.8K modem this will be around 30 minutes. the good news is that you can start watching the animation as it streams across the net to you. Once it's fully downloaded, it will loop quickly through the frames and you can watch the Buddha come swimming out of the void. The complete animation took around half an hour to generate on a P233 Laptop PC.

Alex Boswell found an almost magical way to vastly speed the renderingof highly zoomed regions. Click here for an example.

Albert Lobo has produced a simply gorgeous music video exploration of the Buddhabrot in 4D. View it on YouTube or download the 22 MB high-res version.

Benedikt Bitterli later produced a beautiful 4K video with clever speed-ups and denoising. He provides several video frames there suitable for wallpaper. I particularly liked the image to the right which he generously rendered for me in 16K which I had printed and framed. You can get that rendering here.

Reimplementations and Ruminations by Others