Path: news.mathworks.com!not-for-mail
From: "Sven " <sven.holcombe@gmail.deleteme.com>
Newsgroups: comp.soft-sys.matlab
Subject: Separating connected image regions?
Date: Thu, 14 Aug 2008 21:43:02 +0000 (UTC)
Organization: The MathWorks, Inc.
Lines: 39
Message-ID: <g828t6$5fg$1@fred.mathworks.com>
Reply-To: "Sven " <sven.holcombe@gmail.deleteme.com>
NNTP-Posting-Host: webapp-05-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1218750182 5616 172.30.248.35 (14 Aug 2008 21:43:02 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Thu, 14 Aug 2008 21:43:02 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 1326470
Xref: news.mathworks.com comp.soft-sys.matlab:485573



Hi there,

I am attempting to separate two blobs on a series of images,
and I am stuck on a certain aspect of the problem.

Imagine two cells in a series of images. Simple thresholding
returns two masks when the cells aren't touching, but only
one mask when they *are* touching.

Unfortunately the blobs aren't brightest at the centre,
dissipating out towards the edges. Instead, they are
brightest along the cell walls.

Therefore I have tried the following approach.

1. Find an image in the series with two separate blobs. Save
this label matrix as a 'template'.

2. Move to the next image in the series and threshold for blobs.

3. If only one (larger) blob is found, compute the distance
function (as per the 'distance transform' doc page).

At this point I am a little stuck. This image usually gives
me two peaks with a valley between. I want to draw a line
down the lowest point in this valley in order to
artificially break my single mask into two separate masks.

Is this a smart way to tackle the problem? How can my final
step be done?

Note that the template computed in (1) will be used to
verify my final two masks, as I expect the artificially
separated masks to overlap quite well with my template.

Any help would be great.

Cheers,
Sven.