Path: news.mathworks.com!newsfeed-00.mathworks.com!kanaga.switch.ch!switch.ch!ecngs!feeder2.ecngs.de!feeder.news-service.com!eweka.nl!hq-usenetpeers.eweka.nl!69.16.177.246.MISMATCH!cyclone03.ams.highwinds-media.com!news.highwinds-media.com!npeersf01.ams.highwinds-media.com!newsfe29.ams2.POSTED!7564ea0f!not-for-mail
Sender:  <tristram@chicken.quantmodels.co.uk>
From: tristram.scott@ntlworld.com (Tristram Scott)
Subject: Re: Find gaussian humps in a 3D dataset
Newsgroups: comp.soft-sys.matlab
References: <galg9a$995$1@fred.mathworks.com> <galiqa$6es$1@fred.mathworks.com> <galsdg$615$1@fred.mathworks.com> <89c959ea-cf37-496d-8013-8a1f96a73213@2g2000hsn.googlegroups.com>
User-Agent: tin/1.7.7-20041215 ("Scalpay") (UNIX) (SunOS/5.10 (sun4u))
Lines: 33
Message-ID: <fwJzk.60139$6Y7.42807@newsfe29.ams2>
NNTP-Posting-Host: 82.6.107.75
X-Complaints-To: http://netreport.virginmedia.com
X-Trace: newsfe29.ams2 1221551243 82.6.107.75 (Tue, 16 Sep 2008 07:47:23 UTC)
NNTP-Posting-Date: Tue, 16 Sep 2008 07:47:23 UTC
Organization: virginmedia.com
Date: Tue, 16 Sep 2008 07:47:23 GMT
Xref: news.mathworks.com comp.soft-sys.matlab:490430



Greg Heath <heath@alumni.brown.edu> wrote:
> 
> I suggest you start with similated data. This is not an easy
> problem because of the difficulty of separating overlapping Gaussians.
> 

That certainly seems like a good idea to me.  It might take quite a bit of
practice to tune your methods here. 

An alternative method of detection might be to first normalise your data,
and then attempt to spot deviations from the norm.

Take your data set and apply a multi-dimensional smoothing to it, like a
moving average, but in higher dimensions.  You can do this quite
efficiently using convolutions, or equivalently using fftn().

Once you have the smoothed function, subtract it from your original data
set, and you will be left with the deviations from the local average
levels.  Now you can search the whole data set for places where the
deviation from the average is above your threshold level.

As Greg said, though, the overlapping Gaussians might cause you some 
extra troubles.  You may be able to locate these by noticing greater than
expected intensity, indicating there is more than one particle.  I'm not
sure what the best method of fitting would be, though.  It does sound like
a constrained optimisation problem.

You said that you have maybe 1000 particles.  I take it that you also have
many data sets, not just the one?

-- 
Dr Tristram J. Scott              
Energy Consultant