We present a novel, robust and accurate blood velocity estimation technique that is implementable by elementary digital signal processing. In this technique, echoes from repeated firings of a transducer are resampled along a set of predetermined trajectories of constant velocities, called "butterfly lines" because of their intersection at a reference range. The slope of the trajectory on which the sampled signals satisfy a predetermined criterion appropriate for the type of signal in question, provides an estimate of the velocity of the target. The search for this trajectory is called "butterfly search," which can be carried out efficiently in a parallel processing scheme. The estimator can be based on the RF echo, its envelope, or its quadrature components. We present the theory of the butterfly search and some preliminary results. The butterfly search on quadrature components has shown superior noise immunity, with relatively few successive scan lines, and was found to outperform all the common time domain and Doppler techniques in simulations and phantom experiments with strong noise. The butterfly search can overcome many disadvantages faced by the present day techniques, such as the stringent tradeoff criterion between imaging resolution and velocity resolution implicit in Doppler techniques, and the need for computation-intensive operations.