In the field of optical three-dimension (3-D) measurement, reconstruction usually is completed by the integration of a two-dimensional (2-D) gradient data set. Position and posture of camera and shape of the surface under test determine the location of gradient data which usually is on quadrilateral grids. This paper proposes a B-spline surface-based 3D reconstruction method for deflectometry, which reconstructs the surface under test with its 2-D gradient data set. The 2-D gradient data set consists of gradient data and the 2-D location of the gradient data in the camera coordinate system. The 2-D gradient data set is first transferred to the cameras’ virtual image plane, so it locates on rectangular grids. Then, based on the properties of the B-spline basis function and characteristics of the camera, linear equations are derived to solve control points along the virtual image plane. The solved control points reconstruct the surface under test in the camera coordinate system. The property of the B-spline basis function determines the relationship between the depth of the surface and its derivative. The characteristic of the camera determines the relationship between the depth of the surface and the 2-D location of the gradient data. Meanwhile, the accuracy of the 2-D location can also be improved by the linear equations. Finally, simulated and actual experiments show that the proposed method is accurate and efficient at reconstructing surfaces in deflectometry.