So as not to steal your thread with too many entertaining asides, back to the gist of your question: whenever I find myself beset with the problem of visual monotony, I turn to noise (of course) but typically at some steps removed, by means of some intervening processes. One of my favorite choices is making noise “in the frequency domain” and then bringing it “into the spatial domain” by way of the inverse Fourier transform (ifft
). That becomes a never-ending source of quasi-periodic variables — not raw noise, but not monotonously periodic either. Here is an example from “TV on the Fritz”, subject of post #149 in Tutorial Fragments the other day.
# Make spectral noiseball around specspace origin
$pw,$pw,$pw,2,u(-1,1)
-name. noiseball
-resize[noiseball] {$aw},{$ah},{$ad},{s},0
# Make spectral noiseball multiplier ellipse
-input {w#$noiseball},{h#$noiseball},{d#$noiseball},1
-name. gaussball
_mkclip[gaussball] $pw,$ecent,$ang
-shift[noiseball] {-$pw/2},{-$pw/2},{-$pw/2},0,2,0
-shift[gaussball] {-w/2},{-h/2},{-d/2},0,2,0
-set[gaussball] 0,0,0,0,0
-normalize[gaussball] 0,1
-mul[noiseball,gaussball]
# Take spectral noise to spatial space
-split[noiseball] c
-ifft[-2,-1]
-append[-2,-1] c
-orientation[noiseball] # Unscaled warping image...
That is (1) make a tiny bit of 2-channel noise in the center of an otherwise black image, (2) split
, ifft[-2,-1]
append[-2,-1] transforming spectral noise into a bunch of overlapping sine waves that interact in interesting ways. (3) scale (
normalize`) as you see fit to fit your larger scheme. (3a) converting (extracting) the directional information from these quasi-periodic images also furnishes a useful result. In this excerpt, the “noiseball” image furnishes the quasi-periodic output that you may harness as arguments to some follow-on process that you would like to make less monotonous. Perhaps (as an example) varying the semi-major and semi-minor axes of ellipses.
Have fun!