[ ] One transformation matrix at the end of the 25 operations
[ ] Affine transformation matrices.
[ ] Sparsity: This year, we added another dimension of sparsity in addition to the space sparsity.
[ ] Tiling
[ ] Test with asymmetric image
[ ] When initializing the orientation array, see if we can do a bit of loop unrolling
[ ] Get rid of all helper functions, put everything into implementation driver at the end
[ ] Premake 8 buffers for each of the types of rotations
orientation to point to the correct pre-made image in the sequence[ ] Padding for translation
Image translation (moving the image) can also be slow if it involves creating new image buffers. This code uses another trick: padding.
This means translation is achieved just by changing the starting pointer for reading the image data, which is extremely fast.