In this paper we derive constraint equations relating orientation and spatial frequency disparities to the local surface normal. We derive necessary and sufficient conditions for recovering surface normals: (i) Two measurements of orientation disparity, or (ii) One measurement of orientation disparity and associated spatial frequency disparity. These conditions are readily met in local regions of real images, for example in texture patches and in the neighborhood of brightness edges and lines that are curved or form corners and junctions. We develop a least squares algorithm that provides more reliable computation of 3-D surface normals when more than the minimum number of orientation and spatial frequency disparities are available. Experimental results are presented to demonstrate the success of this approach.