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

Case 7

Now we are going to make a major change in direction. All of the surfaces from cases 0 through 6 consisted of a few individual points located in specificgeometries in the space domain. All of the remaining points on the surface had a value of zero. This resulted in continuous (but sampled) surfaces in the wavenumber domain.

Now we are going to generate continuous (but sampled) surfaces in the space domain. We will generate these surfaces as sinusoidal surfaces (similar to a sheet of corrugated sheet metal) or the sums of sinusoidal surfaces.

Performing Fourier transforms on these surfaces will produce amplitude spectra consisting of a few non-zero points in wavenumber space with theremaining points in the spectrum having values near zero.

Need to change the surface plotting scale

In order to make these amplitude spectra easier to view, I have modified the program to cause the square representing each point in the amplitude spectrum to be five pixels on each side instead of three pixels on each side. To keep theoverall size of the images under control, I reduced the width and the height of the surfaces from 41 points to 23 points.

Display fewer results

I suspect that you have seen all the real parts, imaginary parts, and unshifted amplitude spectra that you want to see. Therefore, at this point, Iwill begin displaying only the input surface, the amplitude spectrum, and the output surface that results from performing an inverse Fourier transform on thecomplex spectrum.

A zero frequency sine wave

The first example in this category is shown in Figure 12 . The input surface for this example is a sinusoidal wave with a frequency of zero. This results ina perfectly flat surface in the space domain as shown in the leftmost image in Figure 12 . This surface is perfectly flat and featureless.

Figure 12. Graphic output for Case 7.
missing image

The code for this case

The code that was used to generate this surface is shown in Listing 18 . For the case of a sinusoidal wave with zero frequency, every point on the surfacehas a value of 1.0.

Listing 18. Code for Case 7.
case 7: for(int row = 0; row<rows; row++){ for(int col = 0; col<cols; col++){ spatialData[row][col] = 1.0;}//end inner loop }//end outer loopbreak;

A single point at the origin

As shown by the center image in Figure 12 , the Fourier transform of this surface produces a single point at the origin in wavenumber space. This isexactly what we would expect.

The inverse transform output is ugly

The result of performing an inverse Fourier transform on the complex spectrum is shown in the rightmost image in Figure 12 . As was the case earlier in Figure 6 , the ugliness of this plot is an artifact of the 3D plotting schemeimplemented by the class named ImgMod29 . The explanation that I gave there applies here also.

A very small error

Once again, the total error is very small. The numeric output shows that the final output surface matches the input surface to within an error that is lessthan about one part in ten to the thirteenth power. Thus, the program produces the expected results for this test case.

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