I am doing research in audio watermarking and have come across the paper that uses the complex transform to embed the watermark in order to improve the robustness and inaudibility of the embedded watermarks.

This is done by embedding the watermark into the complex cepstral components of the audio coefficients transformed by the complex cepstrum. The Complex Cepstral transform is defined by:c(n) = ifft{ln[fft[z(n)]]} and the inverse is defined by: z(n) = ifft{exp [fft[c(n)]]}.This is the formula I am using in MATLAB, where z(n) is my nx1 audio signal array.

My question is do you normally embed the watermark into only the complex part of the values or into the entire values? I am trying to embed in MATLAB using the formula c'(n) = c(n)(1+αW), where α is embedding strength (I am using α=.02), and W is the watermark data. However after embedding and reversing the Cepstral Transform, I am ending up with really large and strange data so I must be doing something wrong. Any help would be greatly appreciated!

I might not have done the best job at explaining my problem so please ask any questions and I can edit this post to make it clearer. Thank you!


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.