Re: spots on image [message #52243] |
Thu, 25 January 2007 13:22  |
Brian Larsen
Messages: 270 Registered: June 2006
|
Senior Member |
|
|
I have done a bit of similar work. Just in quick pseudocode
dat = fltarr(256,256)
;; fill with an image
;; find one of the pinhole brightnesses using your method
;; call that center[2] [0]->x [1]->y
;; take one of the points and form a sub-array around that larger than
the pinhole, call the pinhole 4 pixels max
sub_arr = dat[center[0]-5:center[0]+5, center[1]-5:center[1]+5] ; make
sure you have grabbed a large enough chunk but small enough not to grad
two pinholes
;; use gauss2dfit on the chunk Result = GAUSS2DFIT( Z, A [, X, Y] [,
/NEGATIVE] [, /TILT] )
res = gauss2dfit(sub_arr, a)
;; then get rid off all the indices in subarr from the indices you
found in your original where statement with another where
Poof done. Of course it will be more work as you iron out the details
but that should get you started.
Make and sense?
Brian
------------------------------------------------------------ ---------------
Brian A. Larsen
Dept. of Physics
Space Science and Engineering Lab (SSEL)
Montana State University - Bozeman
Bozeman, MT 59717
On Jan 25, 2:03 pm, "rpert...@gmail.com" <rpert...@gmail.com> wrote:
> Hello,
> I am new to IDL so bear with me! I am analyzing an image with some
> spots on them (from a few pinholes). I need to know where these spots
> are and mark them and make a Gaussian fit. I have used the where
> function to find where the spots are and have obtained the pixels where
> the intensity is higher than a threshold. However, the spots are made
> up of more than 1 pixel, therefore i need to group these pixels
> together to make up one spot, and then fit a Gaussian...
>
> Any ideas how to do that?
>
> Thanks!
>
> RP
|
|
|