Auto white balance by surface reflection decomposition