Giter Site home page Giter Site logo

dinhanhx / automatic_speaker_recognition Goto Github PK

View Code? Open in Web Editor NEW
8.0 4.0 1.0 32 KB

A repos for USTH Digital Signal Processing 2020 Group 3 project. It's quite obvious in the title.

License: MIT License

Python 100.00%
dsp digital-signal-processing voice-recognition machine-learning mfcc-features gmm sklearn python3 voice human

automatic_speaker_recognition's Introduction

Automatic speaker recognition

A repos for USTH Digital Signal Processing 2020 Group 3 project. It's quite obvious in the title.

Img

Introduction

What is speaker recognition

What is digital signal processing

This project harness the power of function mfcc from python_speech_features and model gmm from sklearn.

Read more about Mel frequency cepstrum coefficients and Gaussian Mixture model.

Datasets

This is the datasets. Remember to read AudioInfo.txt in Sunday datasets before processing.

135 .wav files of each person are 135 lines in transcripts/random_sentences.txt.

Note that Friday datasets is just an archive of Sunday datasets. Please use Sunday datasets.

Approach

Each Sunday_datasets/mix, Sunday_datasets/low, Sunday_datasets/high, I take 100 out of 135 .wav files of each person then I fit these files into a model which will represent that person's unique voice features. The rest 35 .wav files of each person are used to test the system of models.

100 .wav files are be shuffled to show that order of files is not important.

Plan:

  • Train models with Sunday_datasets/mix folder.
  • Train models with Sunday_datasets/low folder.
  • Train models with Sunday_datasets/high folder.
  • Then test each system of models on Sunday_datasets/mix, Sunday_datasets/low, Sunday_datasets/high folders.

Read our report for more details.

Project structure

To have clear view of folders and files

+--venv/
|
+--transcripts/
|  +--usth.txt
|  +--random_sentences.txt
|
|--datasets/
|  +--mix/
|  |  +AudioInfo.txt
|  |
|  +--low/
|  |  +AudioInfo.txt
|  |
|  +--high/
|     +AudioInfo.txt
|  
|--source_code/
|  +--Friday_script_models/ # Ignorable
|  +--models/ # Where models are saved as binary files
|  +--mfcc_gmm_func.py # Script of functions to call mfcc and gmm
|  +--requirements.txt # pip install -r requirements.txt
|  +--train_models.py
|  +--try_models.py
|
+--LICENSE
+--README.md
+--.gitignore

Group's member

automatic_speaker_recognition's People

Contributors

dinhanhx avatar huy-ngo avatar namluu25 avatar pcranger avatar quanglh195 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

nhacbatquan

automatic_speaker_recognition's Issues

Refractoring code

I find that the code in mfcc_gmm_func.py is hard to read because:

  • Overcommenting: some comments are redundant and distracting (e.g. it's quite obvious that wavfile is for handling wav file). In addition, I think comments are more helpful where the imported function/module is used than where it's imported.
  • Function docstrings are unconventionally placed: They're put as comments before function declaration

Since everyone has their own tasks now, I'll try to do this without affecting its usage

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.