<< Chapter < Page
  Digital signal processing - dsp     Page 7 / 21
Chapter >> Page >

End of the ImgMod30 class

Listing 4 also signals the end of the class definition for the class named ImgMod30.

The program named ImgMod31

The purpose of this program is to exercise and to test the 2D Fourier transform methods and the axis shifting method provided by the class namedImgMod30.

Command line parameters

The main method in this class reads two command line parameters and uses them to select:

  • A specific case involving a particular 3D input surface in the space domain.
  • A specific display format.

Forward and inverse Fourier transforms

The program performs a 2D Fourier transform on that surface followed by an inverse 2D Fourier transform. Six different plots are produced in this processshowing different aspects of the transform and the inverse transform.

Fourteen cases

There are 14 different cases built into the program with case numbers ranging from 0 to 13 inclusive. Each of the cases is designed such that the results ofthe analysis should be known in advance by a person familiar with 2D Fourier analysis and the wavenumber domain. Thus, these cases can be used to confirmthat the transform code was properly written.

The cases are also designed to illustrate the impact of various space domain characteristics on the wavenumber spectrum. This information will be usefullater when analyzing the results of performing 2D transforms on photographic images for example.

A stack of output images

Each time the program is run, it produces a stack of six output images in the top-left corner of the screen. A brief description of each of the outputimages is provided in the following list. The top-to-bottom order of the stack is:

  1. Space domain output of inverse Fourier transform. Compare with original input in 6 below.
  2. Amplitude spectrum in wavenumber domain with shifted origin. Compare with 5 below.
  3. Imaginary wavenumber spectrum with shifted origin.
  4. Real wavenumber spectrum with shifted origin.
  5. Amplitude spectrum in wavenumber domain without shifted origin. Compare with 2 above.
  6. Space domain input data. Compare with 1 above.

To view the images near the bottom of the stack, you must physically move those on top to get them out of the way.

Numeric output

In addition, the program produces some numeric output on the command line screen that may be useful in confirming the validity of the forward and inversetransform processes. Figure 2 shows an example of the numeric output.

Figure 2. Numeric output.
height = 41 width = 41height = 41 width = 412.0 1.9999999999999916 0.5000000000000002 0.499999999999998450.49999999999999956 0.4999999999999923 1.7071067811865475 1.70710678118655260.2071067811865478 0.20710678118654233 0.20710678118654713 0.207106781186554351.0 1.0000000000000064 -0.4999999999999997 -0.49999999999999484-0.5000000000000003 -0.4999999999999965

(Note that I manually inserted some and spaces line breaks in Figure 2 to cause the numeric values to line up in columns so as to be morereadable.)

The size of the surfaces

The first two lines of numeric output in Figure 2 show the size of the spatial surface for the forward transform. The second two lines show the size ofthe wavenumber surface for the inverse transform.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Digital signal processing - dsp. OpenStax CNX. Jan 06, 2016 Download for free at https://legacy.cnx.org/content/col11642/1.38
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Digital signal processing - dsp' conversation and receive update notifications?

Ask