Variable bit size run length encoding ("RLE") is used to encode
uninterrupted runs of adjacent first symbols and adjacent second symbols
within a sequence that may represent an image. The symbols may be 1s and
0s. The bit size used to encode a run length for a current run is varied
in dependence on the bit sized used or required to encode a run length of
a previous run of the same symbol type. Further, an image to be encoded
may be transformed into an image/bit sequence representing changes from
line to line in the image. By so transforming the image, the correlation
from run length to run length of like colors is increased, thereby
improving the efficiency of the variable bit size RLE.