comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: STANDARD DEVIATON
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: STANDARD DEVIATON [message #20950 is a reply to message #20946] Tue, 01 August 2000 00:00 Go to previous message
Alex Schuster is currently offline  Alex Schuster
Messages: 124
Registered: February 1997
Senior Member
Ben Marriage wrote:

> I want to calculate the standard deviation of a 3x3 pixel area for each
> element of a satellite image (5000x2000 pixels). At the moment I use for
> loops to scan through the image and then use the built-in IDL standard
> deviation routines. I've tried to speed this up with the use of
> convolution and whatnot but never seemed to solve the problem. Does
> anyone know of a simple and elegant (read "quick") method of doing this
> without using loops?

Without loops yes, elegant, well yes of course, but quick I don't know?
Our fastest SUN takes 8.5 seconds for a dist( 5000, 2000 ). How fast was
your routine using convolution, and how fast should it be?

For some 3x3 pixels x_i (and a mean of x_mean), the standard deviation
is
s = 1/9 * sqrt( sum( (x_i-x_mean)^2 ) ). img=img-smooth(img,3) does the
inner subtraction of the x_means, img=img^2 squares each element,
convol( img, k ) sums them all up Then qrt(img)/9 gives the result.

function foo, img, width
return, sqrt( convol( ( img - smooth( img, width ) )^2, $
fltarr( width, width ) + 1.0 ) ) / width^2
end

Alex
--
Alex Schuster Wonko@weird.cologne.de PGP Key available
alex@pet.mpin-koeln.mpg.de
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: IMDISP update
Next Topic: Re: Record Day on IDL Newsgroup

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Mon Dec 01 00:47:43 PST 2025

Total time taken to generate the page: 3.69058 seconds