Direct Differential Photometric Stereo Shape Recovery of Diffuse and Specular Surfaces