Working with a sound's magnitude instead of amplitude
There is no reason why your piezo shouldn't be able to produce a bipolar output, if you use proper biasing and/or preamp. See for example https://www.homemade-circuits.com/diy-contact-mic-circuit/
Working with the magnitude only is probably a non-starter. $y = |x|$ is a highly non-linear operation and will dramatically change your spectrum. For example a sine wave at $f_0$ has just a single spectral line. The spectrum of the magnitude has a strong DC bias, lots of even harmonics $2f_0, 4f_0 ...$ but no content at $f_0$ at all anymore