Fun with Dots
So here's a picture of a cute bug some code of mine produced.
The code should have (and now does (sort of)) produce something like:
I think there are still some (subtlish) bugs in the code which are visible in the last picture. Can you see one?
Here's another bug. Aliasing, what aliasing?
Here's an image of a greyscale linear ramp, from black on the left to white on the right. The method needs more work, as can be seen by the funny blank spots near the left and some overlapping stipples in the middle, but I think it shows some promise. Each vertical slice should be uniformly the same tone (which it is not in this image), but that is fixable by adjusting one of the parameters correctly. It's just a bit off in this image, as you can see by looking at the bottom-left corner.
And here's a picture of a famous scientist. Guess who?
It's Richard Feynman, the physicist and joker. Source photo courtesy of The Archives, California Institute of Technology.
What's this all for? I took a course on non-photorealistic rendering with two fine German gentlemen named Prof. Thomas Strothotte and Dr. Stefan Schlechtweg. Non-photorealistic rendering is a field of computer graphics that looks at computer generated images that don't necessarily look realistic. There's lots of reasons to do this such as communication, clarity, fun, etc. Artists of all types typically don't render scenes in a photorealistic manner, even to the extent possible of their media. Instead they abstract and modify to more clearly communicate to the viewer. The same ideas are of course useful in computer-generated images.
My project was an attempt at stippling images. Stippling is an artistic
technique where the artist approximates continuous tones with small dots,
called stipples. The stipples have to be placed carefully so that
they represent the desired tone, but also so that they do not introduce
spurious patterns into the final image. For example, the stipples should be
placed semi-randomly and not form lines, grids or other visible stuctures.
Otherwise the viewer would assume that the lines, grids, etc. are a part of
the actual subject, and not just an artifact of the method. The final report
describes what I did up to 2:10am, December 9, 2000 on the project.
The source, as a nice gzip'ed tarball.