from cs61b: "In this project you will implement two simple image processing operations on color images:  blurring and edge detection.  You will use libraries to read and write files in the TIFF image format.  One option in TIFF files is that they can be compressed if there are many adjacent pixels of the same color; the compressed form is called a run-length encoding.  You will write code to convert an image into a run-length encoding and back."