What I have are 3D grayscale images of brains where dark pixels indicate blood vessels (see below, red arrows mark blood vessels). The objective is to obtain some descriptive statistics about them, such as number of vessels in the brain or volume fraction of the brain occupied by vessels. Currently, some poor student would either manually count all the vessels in the brain, or we would just look at the histogram over a certain volume, to determine the volume fraction of blood vessels.
This is a bit a general question, but what approach would you take to automatically detect these structures? Scikit image seems to have some promising methods for edge detection. The algorithm should work on a 3D matrix since one vessel can span multiple image slices. The grayscale values could also be used to improve the resolution: A voxel that is completely filled by a blood vessel has the lowest signal value, while a voxel that is only partially occupied by a vessel has a slightly higher signal value.