IMGS-616-20131 — FOURIER METHODS FOR
IMAGING (RIT #11857)
website: http://www.cis.rit.edu/class/simg616/
Relevant Published Materials:
Though this list is meant to be fairly comprehensive, I am
sure that there are others that should be included – feel free to suggest
additions to the list. Library of Congress call numbers are included for books available
in the RIT library. The comments are my own gauges of usefulness to this class
and to imaging in general. You
should spend some time in the library looking over these books! Many of
you may know about the open-source website archive.org,
which has posted many useful papers. I often go there first when looking for
background material.
Text:
1.
Fourier
Methods in Imaging, Roger L.
Easton, Jr., Wiley, 2010, ISBN 978-0-470-68983-7, available for free use online from RIT Library as e-book.
Other (very useful!) Textbooks:
2.
Foundations
of Image Science, H.H. Barrett &
K.D. Myers, Wiley, 2004, ISBN 0-471-15300-1, Catalog number TK8315.B37 2004, (my
research advisor and a colleague from graduate school, respectively) considers
much of the same material up through optical imaging, though at a more
theoretical level and without figures and homework problems. Even with that
constraint, you should be aware of this book.
3.
Linear
Systems, Fourier Transforms, and Optics, Jack D.Gaskill, Wiley, 1978, QC355.2.G37 (formerly text for this
class, source of many homework problems)
4.
Fourier
Transforms: Principles and Applications, Eric Hansen, Wiley, 2014
(brand new book by a colleague), ISBN: 978-1118479148, description: explains transform methods and their
application to electrical systems from circuits, antennas, and signal
processors—ably guiding readers from vector space concepts to the Discrete Fourier
Transform (DFT) and the Fourier series.
5.
Two-Dimensional
Imaging, R.N. Bracewell, Prentice-Hall,
1995, TA1637.B73 (good book by author of
several classics)
6.
Fourier
Analysis and Imaging, R.N.
Bracewell, Springer 2004, ISBN 978-030648187
7.
Digital
Image Processing, K.R. Castleman,
Prentice-Hall, 1996 (§1-2,§9-16), (far more comprehensive than title
implies; excellent source for a variety of imaging systems, including optics; demonstrates
relationship of linear systems to optical systems, I really like this book), TA1632.C37
Mathematical Foundations of Linear Systems:
1.
For review, the Schaum’s Outline Series volumes on
Calculus, Linear Algebra, Vector Analysis, Matrices, Complex Variables; (everybody in the sciences knows about (or
SHOULD know about) Schaum’s Outline Series; each volume includes solved and
supplemental problems), also Schaum’s
Mathematical Handbook (of formulas and
concepts)
2.
Advanced
Mathematical Methods for Engineering and Science Students, G. Stephenson, P.M.Radmore,
3.
Linear
Algebra and its Applications (3rd
Edition), Gilbert Strang, Harcourt, Brace, Jovanovitch, 1988, (Chapters on
orthogonal projections, eigenvectors, change of bases)
4.
Any of several
texts on mathematical physics, e.g., Kreysig and Kreysig, Advanced Engineering Mathematics, Arfken, Mathematical Methods for Physicists, Byron and Fuller Mathematics of Classical and Quantum Physics,
etc. (Every scientist probably needs to be familiar with at least one of these).
Byron and Fuller is available as a Dover paperback reprint for under $25 (www.doverpublications.com)
Fourier Transforms in Mathematics: (theorems and
proofs, perhaps of special interest, but not generally needed)
1.
The Fourier
Integral and Certain of its Applications, N. Wiener, Dover Publications reprint, 1958 (first published in 1933
– tediously mathematical), QA404.W47
2.
An
Introduction to the Theory of Fourier's Series and Integrals, H.S. Carslaw, Dover Publications reprint, 1950
(first published in 1930 -- also mathematical, but easier to read than
Wiener) QA404.C32
3.
A Handbook
of Fourier Theorems, D.C.
Champeney,
Fourier Transforms in Physics/Engineering:
1.
Fourier
Series and Boundary-Value Problems, R.V. Churchill, McGraw-Hill, 4th Edition,
1987, (classic text with lots of physical applications), QA404.C6
2.
A First
Course in Fourier Analysis, D.M. Kammler, Prentice-Hall, 2000, (useful
discussions of mathematical and computational aspects), QA403.5.K36
3.
Fourier
Transforms and their Physical Applications, D.C.
Champeney, Academic Press, 1973, (excellent book), QA403.5.C46
4.
Fourier
methods for mathematicians, scientists, and engineers, M.
Cartwright, Ellis Horwood, 1990, (paperback, introductory, lots of physical
applications), QA403.5.C37
5.
The Fourier
Transform and Its Applications (2nd
Edition, Revised), R.N.Bracewell, McGraw-Hill, 1986, (the standard reference
on 1-D Fourier, good discussion of discrete transforms and applications), QA403.5.B7
6.
Fourier
Transforms, An Introduction for Engineers, R.M. Gray and J.W. Goodman, Kluwer Academic Publishers, 1995, (aimed
at discrete transform, not as useful as I expected), TK5102.9.G73
7.
A student's
guide to Fourier transforms, with Applications to Physics and Engineering, J.F. James,
8.
The Fourier
Integral and its Applications, A.
Papoulis, McGraw-Hill, 1962, (old, pre-FFT, though good mix of mathematical
theory and practical applications), QA404.P32
9. Fourier Transforms, I.N. Sneddon, Dover
Publications, 1995 (first published in 1951), (similar comments to Papoulis
above), QA404.S53
10. Fourier Analysis, T.W. Körner,
11. Exercises
for Fourier Analysis, T.W. Körner,
12. Integral
Transforms in Science and Engineering, K.B. Wolf, Plenum, 1979, (mathematical
reference), QA432.W64
13. Probability,
Statistical Optics, and Data Testing, 2nd Ed., B.R. Frieden,
Springer-Verlag, 1991 (particularly §4 on Fourier methods – excellent
discussion of applications of statistical principles to many types of imaging
problems, not just optics), QA273.F89
14. Statistical
Optics, J.W. Goodman, Wiley, 1985, (applications of Fourier theory
to statistics, particularly in optics), QC355.2.G66
15. The Hartley Transform,
R.N. Bracewell,
Discrete Fourier Transforms: (more relevant to course IMGS-718
Digital Imaging Mathematics)
1.
The FFT,
Fundamentals and Concepts, R.W. Ramirez, Prentice-Hall, 1985, (graphical
introduction to discrete and fast Fourier transform algorithms) QA403.5.R36
2.
The Fast
Fourier Transform and its Applications, E.O. Brigham, Prentice-Hall, 1988, (excellent), QA403.B75
3.
Fast
Fourier Transforms, J.S. Walker,
2nd Edition, CRC Press, 1996, (w/ DOS software J), QA403.W33
4.
Multidimensional
Digital Signal Processing, D.E.
Dudgeon and R.M. Mersereau, Prentice-Hall, 1984 (§1-§2), (written for EEs,
but good discussion of 2-D discrete transform) TK5102.5.D83
5.
Exact Fourier Spectrum Recovery, M. Andrecut,
Arxiv.org, https://archive.org/details/arxiv-1304.2043
6.
The Fractional Fourier Transform and Applications,
David H. Bailey and Paul N. Swarztrauber, 1990, https://archive.org/details/nasa_techdoc_19970015100
Linear Systems and Optical Imaging:
1.
Introduction
to Fourier Optics, J.W. Goodman, (3rd Edition), Roberts
and Co., 2005, (updated classic, generally accepted, with good reason, as the
BEST book on Fourier transforms in optical imaging), QC355.G65
2.
Fourier
Optics, An Introduction (2nd Edition), E.G. Steward, Wiley, 1987,
(useful introduction, lower level than Goodman), QC454.F7S83
3.
Introduction
to the Optical Transfer Function, C.S. Williams and O.A.
Becklund, Wiley, 1989, (specialized topic of linear systems in optics),
QC367.W55
4.
Systems and
Transforms with Applications in Optics, A. Papoulis, McGraw-Hill,
1968, (another classic, Papoulis has LOTS of useful things to say!), QC383.P23
5.
Applications
of Optical Fourier Transforms, H. Stark, ed., Academic
Press, 1982, (as implied, discussions of specific applications), TA1632.A68
6.
Quantitative
Coherent Imaging: Theory, Methods, and Some Applications, J.M.
Blackledge, Academic Press, 1989, (nice description, unusual notation/spellings,
e.g., “Weiner” vs. “Wiener”), QC476.C6.B553
7.
The New
Physical Optics Notebook, Reynolds, DeVelis,
Parrent, and Thompson, SPIE Press, 1989, (applications of linear systems to
optics/holography; though I am not fond of the notation, this is a very useful
book that considers applications of Fourier transforms to optics and imaging),
QC395.2.N48
8.
Fourier
Series and Optical Transform Techniques in Contemporary Optics, Raymond
Wilson, John Wiley & Sons, Inc, 1995. QC454.F7 W55 (ISBN 0-471-30357-7)
9.
Two-Dimensional
Phase Unwrapping, Theory, Algorithms, and Software,
Dennis C. Ghiglia and Mark D. Pratt, Wiley-Interscience, 1998. (not in RIT
Library, call number is TK6582.S95G45, ISBN 0-471-24935-1), includes algorithms
and code.
10.
Deconvolution
of Images and Spectra (Second Edition), Peter A. Jansson (ed.),
Academic Press, 1997, QC451.6.F45 (ISBN 0-12-380222-9)
11.
Analysis
and Evaluation of Sampled Imaging Systems, Richard
H. Vollmerhausen; Donald A. Reago Jr.; Ronald G. Driggers, SPIE, 2010
(available as e-book from RIT library), )Advancing technology in detector
arrays, flat panel displays, and digital image processing provides new
opportunities to expand imaging applications and enhance system performance.)
12.
Transformations
in Optics, Lawrence Mertz, John Wiley & Sons, 1965, ISBN
978-0471596400 (classic book that discusses on Fourier transform
spectrometry theory and practice, Fresnel transforms including the chirp Fourier
transform)
13.
Basic
electro-optics for electrical engineers, Glenn
D. Boreman, SPIE tutorial text, 1998 (available as e-book from RIT library)
14.
Computational
Fourier Optics: a MATLAB Tutorial, David G. Voelz, SPIE
Library, 2011 (available as e-book from RIT library)
15. Modulation Transfer Function in Optical and
Electro-Optical Systems, Glenn D. Boreman, SPIE
tutorial text, 2001 (available as e-book from RIT library)
Image Recovery:
1.
Image
Restoration and Reconstruction,
R.H.T. Bates and M.J. McDonnell, Oxford University Press, 1986, (application
of linear systems to imaging), TA1632.B36
2.
Image
Recovery, Theory and Application,
(H.Stark, ed.), Academic Press, 1987, (similar to Bates but more
applications, multiple authors, fragmented), TA1632.I4824
Useful
References from Magazines and Journals: (with links to pdf copies)
1.
“The
Fourier Transform,” R.N. Bracewell, in Scientific
American, June 1989, pp. 86-95
2.
“Numerical
Transforms,” R.N. Bracewell, in Science,
v.248, 11 May 1990, pp. 697-704
3.
“Fourier
Analysis Using a Spreadsheet,” R.A. Dory and J.H. Harris, in Computers in Physics, Vol. 2, Nov.-Dec. 1988, pp. 83-86
4.
“A Plain
Man's (sic) Guide to the FFT,” P. Kraniauskas, in IEEE Signal Processing Magazine,
v.11, April 1994, pp. 24-35
5.
“Tom,
Dick, and Mary Discover the DFT,” J.R. Deller, Jr., in IEEE Signal Processing Magazine, v.11 April 1994, pp. 36-50
6.
“SIGNALS,
Interactive Software for One-Dimensional Signal Processing,” R.L. Easton,
Jr., in Computer Applications in
Engineering Education, v.1,
December 1993, pp. 489-501
7.
“Fast Fourier
Transforms for Fun and Profit,” W.M. Gentleman and G. Sande, in Proceedings
- Fall Joint Computer Conference, 1966, pp. 563-578
8.
The Theory and
Design of Chirp Radars, J.R. Klauder, A.C. Price, S. Darlington, and W.J.
Albersheim, BSTJ, 39, 745-808.
(available from https://archive.org/details/bstj39-4-745);
(classic paper about chirp radar that is
also relevant to optical imaging, John Klauder was by all accounts a brilliant
contributor to many areas of science, from math radar to quantum theory to
radar).
Other books containing useful discussions of imaging subjects:
1.
Principles
of Digital Image Synthesis,
Andrew Glassner, Morgan-Kauffman, 1995 (two volumes), (very nice discussion
of broad range of imaging topics, relevant material in §4-5,§8-10),
T385.G585
2.
Image
Reconstruction in Radiology, J. Anthony Parker, CRC Press, 1990, (excellent book of much more general
application than title implies; written for medical students and radiologists,
does not require a “high” level of mathematical knowledge, useful intuitive
discussions of imaging principles and linear algebra) RC78.7.D53 P36
3.
Radiological
Imaging, H.H. Barrett and
W.Swindell, Academic Press, 1981, (terrific book, also much more general
than indicated by its title), (§2,
§4 on Linear Systems, §3 on Random Processes, §7 on Computed Tomography) RC78.B337
Computing Resources:
Many computational software packages are available that are helpful
when learning the material in this class. CIS uses IDL™ from ITT
Exelis (http://www.exelisinc.com/) as its “standard” package. It is
installed on the UNIX workstations in the Center, and also is available
for purchase at a substantial student discount from CIS. Other packages exist,
including Mathematica™ (available on RIT VAX), MathCad™,
Matlab™, and Scientific Workplace™, and ENVI®. All these packages allow
computations involving most aspects of matrix algebra and complex analysis to
be evaluated quickly and (more or less) painlessly. They also have graphing
routines which may assist in visualizing concepts. In my opinion, most of the
packages have a fairly steep learning curve – you cannot do much that is useful
“out of the box.” The programs also have their respective advantages and
disadvantages, e.g., my opinion is that the interfaces to Mathematica™
and MathCAD™ are not very intuitive, which means that new users
have to travel the learning curve. Conversely, experienced users are rewarded
by quicker answers.
I suggest exploring some of the freeware alternatives
to the big expensive programs, the Python-based software Sage Math (http://www.sagemath.org) or Geogebra (http://www.geogebra.org) – of course, you
can guess that a free package likely is more difficult to learn and use. The
Wolfram demonstrations project includes a range of possibly useful stuff (http://demonstrations.wolfram.com/),
such as Fourier transform pairs, but most demos are not flexible.
Signals Software:
For demonstrations in lectures, I shall
often use my (ancient, but still serviceable) program “SIGNALS”
(which was written before many, if not all, of you were born!). It is keystroke
driven from menus, so it is typically much faster to use in class than other
available software tools, such as MATLAB. It may be downloaded from the CIS
website:
http://www.cis.rit.edu/people/faculty/easton/signals/signals.zip.
A “User Manual” is posted at: http://www.cis.rit.edu/resources/software/sig_manual/index.html.
“SIGNALS”
was written to run in the antediluvian PC Disk Operating System
(“DOS”) and therefore cannot be used directly on “modern” PC operating systems
(any after Windows 98). Fortunately, it runs quite well on a wide range of
computer platforms including all flavors of Windows (95, 98, XP, Vista, Win7,
and Win8), the Macintosh OS, and Linux by using the free DOS emulator “DOSBox” (available at http://www.dosbox.com/). In DOSBox, the graphics display appears in
a window, which is a significant advantage over the old full-screen DOS
display. For example, it now is possible to run several independent sessions of
Signals by starting different
sessions of DOSBox.
Any version of DOSBox may be optimized for “Signals” by
editing the configuration file (see instructions on the DOSBox website or go to “Start
à Programs à
DOSBox à
Configuration à
Edit Configuration” in
Windows; then go to the bottom of the file to the section labeled [autoexec]
and insert the lines listed below after “Lines in this section will be run
at startup:”
#Lines in this section will be run at
startup
mount … (insert location of the directory where the
executable program for Signals resides, e.g., “mount z c:\2d”, which creates an
alias labeled “z” for the directory “c:\2d”)
z: (switches to the drive letter defined in the previous
“mount” command)
cycles=50000 (you may want to experiment with this value
– faster computers can make use of larger numbers to speed up processing)
signals /c (starts the program with the “color”
display switch)
When
you start “DosBox,” “Signals” should start in a command window. Note that you
may read or save files in text format and save them in spreadsheet format,
which is sometimes useful as it allows the files to be entered into other
software (such as Excel) for graphing. There also is an output format that
allows the file to be dropped directly into Kaleidagraph
from Synergy Software (http://www.synergy.com)
for graphing; the graphs in the book were created in exactly this manner.
SignalShow:
A Java counterpart called SignalShow was
written by CIS undergraduate Juliet Bernstein a few years back. Its capability
includes illustration of the 2-D case, but is not as fast to use. It also has
some problems with saving files and I often seem to be able to overload the
program to the point where it becomes unresponsive. The beta releases of SignalShow for the three primary
computing platforms (Windows, Macintosh OSX, and Linux) are available at from
her grad-school website: http://homes.cs.washington.edu/%7Ejuliet/photography/SignalShow.jar.
A video introduction is available at http://www.youtube.com/watch?v=yDNipwKTMXM
and the JAVA source code is available on Dropbox at https://www.dropbox.com/sh/h3c07v15kf1ptao/PQ1_7n8nEa.
Besides being helpful in this course, you may find this program to be helpful
in your quest to visualize the concepts in “Digital Imaging Processing,” and in
“Optics for Imaging.”
Other Software Tools
Other programs are available that are helpful in this
course and the followup IMGS-618 “Digital
Imaging Mathematics.”
·
ImageJ is a
freely available open-source program Windows, Linux and Mac OS X that has
evolved from former versions NIHImage
and ScionImage. Written in Java, the
basic program and “plugins” for more advanced routines are available from the
website http://rsbweb.nih.gov/ij/. Plugins are available for advanced processing
relevant to this and subsequent courses, including the Radon transform and
statistical analysis. My primary gripe with ImageJ
is the limited documentation for the plugins and the fact that the routines often
are not very intuitive, which is not surprising since they were written for
specific applications by users.
·
IDL / ENVI are
available on many computers in the
·
Matlab is
available from RIT for faculty and staff at reduced cost, but this offer does
NOT extend to students (don’t ask me why, because I don’t know)
·
Mathematica,
also available from RIT.
·
Some symbolic
math packages with similar capabilities to Mathematica are available for FREE:
the Python-based software Sage Math (http://www.sagemath.org), Maxima (maxima.sourceforge.net), and Geogebra (http://www.geogebra.org) – of course, it
often is true that free packages may be more difficult to learn and use, but
they are free and you can use them for life.
·
The Wolfram
demonstrations project (http://demonstrations.wolfram.com/)
includes a range of possibly useful stuff, such as Fourier transform pairs, but
the demos are typically not very flexible, i.e., you can only demonstrate the
specific examples generated by the author(s).
·
Graphing Software, which may be simple (such as spreadsheet graphing in Excel) or more
sophisticated (such as Kaleidagraph).
I
think of graphing software as a tool for insight and not as a crutch; you need
to be able to do sketching without the aid of graphing software, so it is
useful to understand the methods for accurate sketches, such as of sinusoidal
functions multiplied by bipolar modulations, e.g., f[x] = cos[2px] ´ SINC[0.25x]. In this case, the sinusoid
oscillates between fixed limits ±1, so the excursions along the vertical axis are
constrained by the SINC function. You
sketch the function by filling in the oscillating cosine between the limits ±SINC[x/4]
17
May 2014