We added varying amounts of Gaussian noise to our marked test signals and attempted to retrieve the hidden message with varying success.

In order to account for the noise, we adjusted the threshold we used in the decoding algorithm. From Figures 10,12, and 14, it is clear that a threshold can be drawn between the higher observed differences (one-bits) and the lower observed differences. However, in the cases where too much noise was added (see Figures 11,13, and 15), this threshold is not so clearly defined. In fact, for the PSA and EA, any threshold value is difficult to determine whether by calculation or by “eyeing it.”

Based on studying these threshold values, we found maximum noise we could add to the marked signal for each algorithm. The minimum SNR for the FMA, PSA, and EA were 30 dB, 30 dProject! ElB, and 60 dB, respectively. At these SNR values and with an input of “Elec301 Project! ”, the algorithms output as follows:

FMA

Elec301 Pro*ect! Elec301 Project! ElB, and 60 dB, respectively. At these SNR values and with an input of “Elec301 Project! ”, the algorithms output as follows:

ec301 Project! Elec30ec301 Project! Elec30

PSA

Elec301Elec301Elec301ELec301Elec301EleC#01Elec301Elec300Elec301El ek30qElec301Elec301Elec301Elec301El El`c 1El

EA

Elec381 Pzg*ect!MleC343 RzebesT!eoec#p1 Psozec|#GleC#00 P2ojEct)Mmec301 QrozEkw Umea3p1'PRgbmct!Eleg:0q P2ojea4%D|

The FMA and PSA clearly outperformed the EA in the noise category. In fact, at the point that we begin to miss bits, we can already significantly hear the white noise. Because the FMA only looks at the difference between the frequencies of the original and marked signals for a small segment of the frequency spectrum (in particular around the maximum frequency of the original signal), the noise power included in the difference is much smaller for the FMA than for the PSA and the EA which both calculate the difference over the whole frequency range. The PSA is good because our ears cannot detect significant alterations in phase; in fact, the phase shift could go up to .1*pi without audible detection. This large phase shift power difference between a one and zero is much more than the power added by the noise.

For all of our algorithms some genres of our test signals performed better in every case. We found that ‘pop’ and ‘techno’ both failed noise tests at least 20db SNR higher than any of the others. Examining the magnitude in the frequency domain for both of these signals (see Figure 8) shows us that the 90% power bandwidth is wider than in the others. I.e. there is significant information at higher frequencies, so more significant frequencies are altered by the noise, which lessens the amount of tolerable SNR.

To defend against noise we encode the user-input phrase over and over as many times as will fit. This increases our chances of getting the phrase back since the probability of several bits being wrong is lower than the probability of one bit being judged incorrectly.

Another defense against noise was to raise our various predefined values closer to human-hearable level. For example we can increase the amount of phase shift in the PSA from .01*pi all the way to .1*pi. These increases mean that the value shifting caused by adding noise is not significant when compared to the value shifting created by encoding a one. In general, there is a balance between how much noise a marked signal can take and how audible the mark becomes. This balance is found by toying with the predefined values for each algorithm.