As a simple machine learning application for quality evaluation, I want to detect abnormal sound in a product. A good product would make a signature humming sound, a bad product might make noises due to bad assembly or problems with the gear train (stripped teeth for example).
My general approach is to record the sound for each product for a few sounds and compare the FFT spectrums. I'm looking for results like "a passing product tend to have a magnitude at 4khz that's twice the magnitude at 2khz" or "a bad product tend to make a high frequency sound at 8khz". Knowing this will allow me to classify the sound.
I think I need a microphone with a flat frequency response, but I don't want to have to calibrate it. I also don't feel it's necessary to calibrate the FFT to SPL or anything. This is because I'm only comparing two different sounds using the same equipment at the same distance, so the raw FFT magnitude would tell me the relative difference between them. I don't need to calculate a SPL reading or dBA reading for this task. Is that right?