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

Need to shift the origin for display

The top-right image in Figure 4 is in a format that is not particularly good for viewing. In particular, the origin is at the top-left corner. Thehorizontal Nyquist folding wavenumber is near the horizontal center of the plot. The vertical Nyquist folding wave number is near the vertical center of theplot. It is much easier for most people to understand the plot when the wavenumber origin is shifted to the center of the plot with the Nyquist foldingwave numbers at the edges of the plot.

The method named shiftOrigin can be used to rearrange the data and shift the origin to the center of the plot.

Shift the origin and display the results

Listing 10 shifts the origin to the center of the plot and displays:

  • The real part of the shifted spectrum
  • The imaginary part of the shifted spectrum
  • The amplitude of the shifted spectrum

The axes are displayed in all three cases.

Listing 10. Shift the origin and display the results.
double[][]shiftedRealSpect = ImgMod30.shiftOrigin(realSpect);new ImgMod29(shiftedRealSpect,3,true, displayType);double[][] shiftedImagSpect =ImgMod30.shiftOrigin(imagSpect); new ImgMod29(shiftedImagSpect,3,true,displayType);double[][]shiftedAmplitudeSpect = ImgMod30.shiftOrigin(amplitudeSpect);new ImgMod29(shiftedAmplitudeSpect,3,true, displayType);

Example displays

Examples of the displays produced by the code in Listing 10 are shown in Figure 4 . The surface being transformed is shown in the top-left in Figure 4 and the result of the inverse transform (discussed later) is shown in the bottom-left in Figure 4 .

The real part of the shifted wavenumber spectrum is shown in the image in the top-center of Figure 4 . The imaginary part of the shifted wavenumber spectrum is shown in the bottom-center of Figure 4 .

The unshifted amplitude spectrum is shown in the top-right in Figure 4 and the shifted amplitude spectrum is shown in the bottom-right image in Figure 4 . The origin has been shifted to the center in the three cases shown in the top-center, bottom-center,and bottom-right.

(It would probably be constructive for you to compare the two rightmost images in Figure 4 in order to appreciate the result of shifting the origin to the center.)

Perform an inverse transform

Listing 11 performs an inverse Fourier transform to transform the complex wavenumber surface into a real surface in the space domain. Ideally, the resultshould exactly match the space domain surface that was transformed into the wavenumber domain in Listing 8 . However, because of small arithmetic errors that accumulate in the forward and inverse transform computations, it is unusual foran exact match to be achieved.

Listing 11. Perform an inverse transform.
double[][]recoveredSpatialData = new double[rows][cols];ImgMod30.inverseXform2D(realSpect,imagSpect, recoveredSpatialData);

Prepare an array object to store the results

Listing 11 begins by preparing an array object to store the results of the inverse transform process.

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