Re: How to seperate touching blobs(closed) in a binary Image
Ok. First of all, this kind of question is not really specific. It's like asking for a "magical method" to solve something. When solving a problem, looking at the problem first, then find the tools that can fit it.
Many image processing methods are designed to work in a way similar to humun dicision. When you say "touching blobs" not a single blob, there will be some features that you used to indicate that this is touching blobs.
For example, if most of the blobs are rounded(or almost) in shape, I can see like they are 2 rounded blobs joined. What can I do? I can determined from the roundedness of an initial labeled blob by checking the roundness(maybe check largest and smallest distance of a line passing through centroid.). Then if it's not likely to be a single blob, then I could seach along the longest axis passing through the centroid to find the narrowest gap and split the blobs there.
This only works for 2 blobs. However, the point is looking the problem at hand and apply the basic tool properly. If your blobs are all circle, square, or etc., you have to use proper methods, e.g. Hough transform, etc.
There are a lot of methods that can be used if applied properly. People can tell you to use a lot of things like statistical method, NN, or snake algo, etc., but if you don't apply them properly it might not work. On the other hand, with some specific contraints on your image, some simple method might work effectively.