Since the rst shape-from-shading (SFS) technique was developed by Horn in the early 1970s, many di erent approaches have emerged. In this paper, six well-known SFS algorithms are implemented and compared. The performance of the algorithms was analyzed on synthetic images using mean and standard deviation of depth (Z) error, mean of surface gradient (p, q) error and CPU timing. Each algorithm works well for certain images, but performs poorly for others. In general, minimization approaches are more robust, while the other approaches are faster. The implementation of these algorithms in C, and images used in this paper, are available by anonymous ftp under the pub=tech paper=survey directory at eustis:cs:ucf:edu (132.170.108.42). These are also part of the electronic version of paper.