How would I rotate an image to a specific desired angle on the Z axis?
For smoothing use Quaternion.Lerp. To go to a specific angle rotation use Quaternion.Euler and pass that to the Lerp function.
An example using a transform would be like:
No Smoothing:
// x, y, z
transform.rotation = Quaternion.Euler(0,0,0);
Smoothing:
transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler(0,0,0), speed);
Hope it helped.