MathGroup Archive 2002

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: Image Processing questions (Help!)

  • To: mathgroup at
  • Subject: [mg34706] RE: [mg34671] Image Processing questions (Help!)
  • From: "Annetts, Dave (E&M, North Ryde)" <David.Annetts at>
  • Date: Sat, 1 Jun 2002 04:29:21 -0400 (EDT)
  • Sender: owner-wri-mathgroup at

Hi Duane,

> First of all, I'm new to Mathematica.  I've been doing image
> processing for some time and I thought I might get some use out of
> this kind of package.
> Now the questions.  Any help is appreciated.
> Is there a FAQ?  I searched the new group and found nothing.
> How do I read in a binary image?  I have some image files that are
> little-endian (I'm using a Mac, which is big-endian).  The pixel
> values are 4 byte float (I'm not sure if that's IEEE floating point). 
> I tried Import and BinaryImport.  No real good solution there that I
> could tell.

If it's not in $ImportFormats, you'll probably have to roll your own
function.  Probably with the aid of functions in Utilities`BinaryFiles` or
the FastBinary package on MathSource.  It may even be that you can use
MathLink in conjunction with some C/C++ code that reads the format you're
interested in.

> How do I do symbolic math with images?  A good example is curvature. 
> I would like to write a notebook describing some of the work I am
> doing in using differential geometry and level sets on images, but
> when I try to develop an equation, I don't get much.  I tried to take
> the gradient of an image, symbolically.  I expected to get a vector
> with the partial derivatives in x and y.  Instead I got back 0.
>   In := Grad[img, Cartesian[x,y,z]]
>   Out := {0,0,0}

How was img defined?  Chances are that you'll probably have to write your
own ImageGradient function that takes numerical data describing the image
you've read in.  There are more examples at

> I was kind of hoping for something like {d/dx(img), d/dy(img),
> d/dz(img)}.  Note that I've already learned that I am forced to carry
> around the third dimension, even though images only have two.  I'll
> worry about that later (but if you know how to get rid of it now, I'm
> open to suggestions).
> Is there a GradientMagnitude operator, or equivalent?  Curvature, for
> example, is the divergence of the gradient divided by the gradient
> magnitude.

Perhaps the Digital Image Processing package would help?  It's at
> Is there a good book for Mathematica?  Something I can use as a
> reference?  I have the Mathematica book, but it's not very useful. 
> The entire documentation on VectorAnalysis occupies about a half a
> page.  The index is WRONG in several places, and there is no
> hierarchical function index.  Nothing on image processing.

VectorAnalysis is described in the Online help rather than in the Main
Bible.  I thought Shaw & Tigg's book was OK, as was Ruskeepää's book.  I
don't recall anything specific on image processing though, so you might like
to trawl the 'net.  You might like to start at 


  Dr. David Annetts             EM Modelling Analyst
  Tel: (+612) 9490 5416         CSIRO DEM, North Ryde
  Fax: (+612) 9490 5467         David.Annetts at
                 Include "usual_disclaimers"

  • Prev by Date: RE: RE: RE: Define a function
  • Next by Date: eliminate some characters inside a file
  • Previous by thread: RE: RE: RE: Define a function
  • Next by thread: eliminate some characters inside a file