NAMEppmshift - shift lines of a portable pixmap left or right by a random amount
SYNOPSISppmshift shift [ppmfile]
DESCRIPTIONReads a portable pixmap as input. Shifts every row of image data to the left or right by a certain amount. The 'shift' parameter determines by how many pixels a row is to be shifted at most.
Another one of those effects I intended to use for MPEG tests. Unfortunately, this program will not help me here - it creates too random patterns to be used for animations. Still, it might give interesting results on still images.
EXAMPLECheck this out: Save your favourite model's picture from something like alt.binaries.pictures.supermodels (ok, or from any other picture source), convert it to ppm, and process it e.g. like this, assuming the picture is 800x600 pixels:
# take the upper half, and leave it like it is
pnmcut 0 0 800 300 cs.ppm >upper.ppm
# take the lower half, flip it upside down, dim it and distort it a little
pnmcut 0 300 800 300 cs.ppm | pnmflip -tb | ppmdim 0.7 |
ppmshift 10 >lower.ppm
# and concatenate the two pieces
pnmcat -tb upper.ppm lower.ppm >newpic.ppm The resulting picture looks like the image being reflected on a water surface with slight ripples.