Giter Club home page Giter Club logo

Comments (12)

anicolson avatar anicolson commented on May 17, 2024 1

So the window size is 32 ms, where the windows overlap by 16 ms. So there is a 32 ms window every 16 ms. The .mat file has the a priori SNR values. 10*log10( ) would give the a priori SNR values in dB. Averaging the 257 point vectors would give the average a priori SNR in dB for each of the frames. A value of 30 dB would indicate that the frame would be largely dominated by speech. A value of -10 dB would indicate that the frame is largely dominated by noise.

Hope this helps.

from deepxi.

anicolson avatar anicolson commented on May 17, 2024

from deepxi.

olafthiele avatar olafthiele commented on May 17, 2024

Thanks, will look into that direction. But we are also interested in "eliminating" the noise and have tried your tool with some success. We are considering to transfer/retrain it with our own data as we are already using DeepSpeech and know what chunks are of good quality. But first, we would like to see how good the current model is. Haven't looked too deep into your code and were therefore wondering what to do with the mt files.

from deepxi.

anicolson avatar anicolson commented on May 17, 2024

Did I reply to this?

from deepxi.

olafthiele avatar olafthiele commented on May 17, 2024

not yet :-) would be great, if you think a simple std variation of the included 257-item vectors yields sth useful

from deepxi.

anicolson avatar anicolson commented on May 17, 2024

You could simply use deepxi.py --infer 1 --out_type y --gain srwf

to save the enhanced speech .wav files, and then give them to DeepSpeech. This would be very easy to do.

A more complex alternative would be to include the enhanced speech magnitude spectrum produced by Deep Xi as part of the front-end of Deep Speech. Deep Speech utilises MFCCs as features, which are computed from the magnitude spectrum of the given wav file.

from deepxi.

olafthiele avatar olafthiele commented on May 17, 2024

Thanks, we already tried that with mixed results. We would therefore try to find out what type of background noise your algo detects better. Therefore it would great to have some sort of measurement that shows how noisy your algo rates a certain chunk. Do you see a way to do that?

from deepxi.

anicolson avatar anicolson commented on May 17, 2024

With the audio that you are using, do you have a reference version? i.e. and ideal version, or a version without noise?

from deepxi.

olafthiele avatar olafthiele commented on May 17, 2024

No, we have around 100 000 chunks and around a third are manually labelled as noisy with heavy or light noise labels. It would be great to see, whether your algo would label them the same way or where it differs. We could then label them automatically or clean them before feeding them to DeepSpeech to get better results

from deepxi.

anicolson avatar anicolson commented on May 17, 2024

you could use the a priori SNR in dB averaged over the frame to understand how much noise is in each time-region of a chunk, or averaged over the chunk if you just want to know the overall SNR of the chunk.

The overall SNR of the chunk could then be used as the label

from deepxi.

olafthiele avatar olafthiele commented on May 17, 2024

Great, so if I understand you correctly, I could average the vector output in the mat files as each 257-element vector represents a 16 ms window. And the mat-values are the normalized db values. Is there any indication of what values are noisy or clean?

from deepxi.

olafthiele avatar olafthiele commented on May 17, 2024

Perfect, thanks a lot mate and happy holidays

from deepxi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.