[Insight-developers] DifferenceOfGaussiansGradientImageFilter

Miller, James V (Research) millerjv@crd.ge.com
Thu, 23 Jan 2003 13:18:43 -0500


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C2C30A.91665178
Content-Type: text/plain

It really just a "Difference of displaced intensities". There is nothing gaussian related to the
implementation (internal to this filter, you have to feed a smoothed image).  I would even avoid the
idea of difference of displaced gaussians because I infer from that name that multiple gaussians are
used.
 
What is there is basically just a digital derivative where the kernel is wider than 3 elements, i.e.
instead of using a kernel
 
-1, 0, 1
 
you are using a kernel
 
-1, 0, ..., 0,1
 
where there are an odd number of 0's between the -1 and 1.
 
I would probably call it something like a "WideCentralDifferenceGradientImageFilter".
 
 

-----Original Message-----
From: George Stetten [mailto:george@stetten.com]
Sent: Thursday, January 23, 2003 12:50 PM
To: Miller, James V (Research)
Cc: Insight-developers (E-mail)
Subject: Re: [Insight-developers] DifferenceOfGaussiansGradientImageFilter


Jim

Our use of the phrase "Difference of Gaussian" is perhaps unfortunate.  We blur the image with a
recurrent binormial filter that approximates a Gaussian, and then produce the components of the
gradient by subtracting the intensity at two points displaced along each of the cardinal directions.
This is a "Difference of Gaussian" but not in the traditional sense.  The traditional DOG is two
concentric Gaussians of different scale, yielding something approximating a Laplacian, which yields
zero-crossings at the boundaries independent of orientation.  

How about we change the name of our "Difference of Gaussian" to "Difference of Displaced Gaussians"
which is more specific?

George

Miller, James V (Research) wrote:


3) the calculation does not appear to be a difference of gaussian 
gradient calculation

I'll defer this to George - it's based on his code. As I 
understand it, 
this filter approximates a DOG computation when run in tandem 
with the 
BinomialBlurImageFilter.




So there are lots of issues with this filter's name then.  At best it computes a gradient of the
image.  However, it is not doing a difference of Gaussians approach internally to the filter.  If you
have to pass it a blurred image, then it is merely doing a gradient calculation.  Now if I am feeding
with a BinomialBlur, then I am not really doing a difference of Gaussians either.


I would say if you can use another gradient calculator in the system, then use that.  I do think it
would be nice to have a DifferenceOfGaussians filter.  It should take a single intensity image and
two sigmas.

_______________________________________________
Insight-developers mailing list
Insight-developers@public.kitware.com <mailto:Insight-developers@public.kitware.com> 
http://publ <http://public.kitware.com/mailman/listinfo/insight-developers> 

ic.kitware.com/mailman/listinfo/insight-developers


-- 

George Stetten, M.D., Ph.D.

Assistant Professor, Bioengineering, U. Pitt.

Research Scientist, Robotics Institute, CMU

http://www.stetten.com <http://www.stetten.com> 





------_=_NextPart_001_01C2C30A.91665178
Content-Type: text/html
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3DUS-ASCII">


<META content=3D"MSHTML 6.00.2715.400" name=3DGENERATOR></HEAD>
<BODY>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff size=3D2>It =
really just a=20
"Difference of displaced intensities". There is nothing gaussian =
related to the=20
implementation (internal to this filter, you have to feed a smoothed=20
image).&nbsp; I would even avoid the idea of difference of displaced =
gaussians=20
because I infer from that name that multiple gaussians are=20
used.</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff =
size=3D2>What is there is=20
basically just a digital derivative where the kernel is wider than 3 =
elements,=20
i.e. instead of using a kernel</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff =
size=3D2>-1, 0,=20
1</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff =
size=3D2>you are using a=20
kernel</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff =
size=3D2>-1, 0, ...,=20
0,1</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff =
size=3D2>where there are=20
an odd number of 0's between the -1 and 1.</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff size=3D2>I =
would probably=20
call it something like a=20
"WideCentralDifferenceGradientImageFilter".</FONT></SPAN></DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D470150918-23012003><FONT color=3D#0000ff=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px =
solid">
  <DIV class=3DOutlookMessageHeader dir=3Dltr align=3Dleft><FONT =
face=3DTahoma=20
  size=3D2>-----Original Message-----<BR><B>From:</B> George Stetten=20
  [mailto:george@stetten.com]<BR><B>Sent:</B> Thursday, January 23, =
2003 12:50=20
  PM<BR><B>To:</B> Miller, James V (Research)<BR><B>Cc:</B> =
Insight-developers=20
  (E-mail)<BR><B>Subject:</B> Re: [Insight-developers]=20
  =
DifferenceOfGaussiansGradientImageFilter<BR><BR></FONT></DIV>Jim<BR><BR>=
Our=20
  use of the phrase "Difference of Gaussian" is perhaps unfortunate. =
&nbsp;We=20
  blur the image with a recurrent binormial filter that approximates a =
Gaussian,=20
  and then produce the components of the gradient by subtracting the =
intensity=20
  at two points displaced along each of the cardinal directions. =
&nbsp;This is a=20
  "Difference of Gaussian" but not in the traditional sense. &nbsp;The=20
  traditional DOG is two concentric Gaussians of different scale, =
yielding=20
  something approximating a Laplacian, which yields zero-crossings at =
the=20
  boundaries independent of orientation. &nbsp;<BR><BR>How about we =
change the=20
  name of our "Difference of Gaussian" to "Difference of Displaced =
Gaussians"=20
  which is more specific?<BR><BR>George<BR><BR>Miller, James V =
(Research)=20
  wrote:<BR>
  <BLOCKQUOTE =
cite=3Dmid:FBE90DFC240BA541B38A43F39913A16D04460F84@xmb02crdge=20
  type=3D"cite">
    <BLOCKQUOTE type=3D"cite">
      <BLOCKQUOTE type=3D"cite"><PRE wrap=3D"">3) the calculation does =
not appear to be a difference of gaussian <BR>gradient =
calculation<BR></PRE></BLOCKQUOTE><PRE wrap=3D"">I'll defer this to =
George - it's based on his code. As I <BR>understand it, <BR>this =
filter approximates a DOG computation when run in tandem <BR>with the =
<BR>BinomialBlurImageFilter.<BR><BR><BR></PRE></BLOCKQUOTE><PRE =
wrap=3D""><!----><BR>So there are lots of issues with this filter's =
name then.  At best it computes a gradient of the<BR>image.  However, =
it is not doing a difference of Gaussians approach internally to the =
filter.  If you<BR>have to pass it a blurred image, then it is merely =
doing a gradient calculation.  Now if I am feeding<BR>with a =
BinomialBlur, then I am not really doing a difference of Gaussians =
either.<BR><BR><BR>I would say if you can use another gradient =
calculator in the system, then use that.  I do think it<BR>would be =
nice to have a DifferenceOfGaussians filter.  It should take a single =
intensity image and<BR>two =
sigmas.<BR><BR>_______________________________________________<BR>Insigh=
t-developers mailing list<BR><A class=3Dmoz-txt-link-abbreviated =
href=3D"mailto:Insight-developers@public.kitware.com">Insight-developers=
@public.kitware.com</A><BR><A class=3Dmoz-txt-link-freetext =
href=3D"http://public.kitware.com/mailman/listinfo/insight-developers">h=
ttp://publ
ic.kitware.com/mailman/listinfo/insight-developers</A><BR></PRE></BLOCKQ=
UOTE><BR><PRE class=3Dmoz-signature cols=3D"$mailwrapcol">--=20
George Stetten, M.D., Ph.D.
Assistant Professor, Bioengineering, U. Pitt.
Research Scientist, Robotics Institute, CMU
<A class=3Dmoz-txt-link-freetext =
href=3D"http://www.stetten.com">http://www.stetten.com</A>

</PRE><BR></BLOCKQUOTE></BODY></HTML>

------_=_NextPart_001_01C2C30A.91665178--