The theory, design, implementation and evaluation of a three-dimensional surface detection algorithm | Synapse