Git Product home page Git Product logo

speech-emotion-webapp's Introduction

Speech Emotion Recognition Python version

Web-application based on ML model for recognition of emotion for selected audio file. You can try it on streamlit sharing platform or on amazon server img

Description

This project is a part of the final Data Mining project for ITC Fellow Program 2020.

Datasets used in this project

  • Crowd-sourced Emotional Mutimodal Actors Dataset (Crema-D)
  • Ryerson Audio-Visual Database of Emotional Speech and Song (Ravdess)
  • Surrey Audio-Visual Expressed Emotion (Savee)
  • Toronto emotional speech set (Tess)

Digital signal processing is an emerging field of research in this era. Recently, many researchers have developed a various approaches in this area for SER from over the past decade.

Typically, the SER task is divided into two main sections: features selection and classification. The discriminative features selection and classification method that correctly recognizes the emotional state of the speaker in this domain is a challenging task

Our project pipeline img

Nowadays, mostly researchers utilize deep learning techniques for SER using Mel-scale filter bank speech spectrogram as an input feature. A spectrogram is a 2-D representation of speech signals which is widely used in convolutional neural networks (CNNs) for extracting the salient and discriminative features. Similarly, we can utilize the transfer learning strategies for SER using speech spectrograms passing through pre-trained CNNs models like VGG, DenseNet or Alex-Net.

Mel-Frequency Cepstral Coefficients, which are a representation of the short-term power spectrum of a sound by transforming the audio signal, are also considered to be an important feature for SER.

The Mel scale is important because it better approximates human-based perception of sound as opposed to linear scales. In filter-source theory, "the source is the vocal cords and the filter represents the vocal tract." The length and shape of the vocal tract determine how sound is outputted from a human and the cepstrum can describe the filter.

In our project we have combined two models: pretrained DenseNet for mel-spectrograms and CNN for mfccs. You can find a more detailed description, EDA and ML models here

Installation

It is recommended to use the provided requirements.txt file to set your virtual environment.

To install the app run this commands

!git clone https://github.com/CyberMaryVer/speech-emotion-webapp.git
!cd speech-emotion-webapp
!python -m virtualenv your_venv
!your_venv/Scripts/activate
!pip install -r requirements.txt

After that you can run the app

!streamlit run app.py

Usage

Example of an execution:

You can try the app here Alt Text

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Team

CyberMaryVer Tal Asher
Maria Startseva Tal Baram Asher

License

Speech Emotion Recognition Project is released under the MIT License.

speech-emotion-webapp's People

Contributors

cybermaryver avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

speech-emotion-webapp's Issues

_internal_create_key

Dear

When I try to execute "api-test.py" as per README

I faced following error , Please help

speech-emotion-webapp/api-test.py
Traceback (most recent call last):
File "E:/2/ACL2020_Paper1_MOSEI_UMONS-master/MOSEI_UMONS-master/speech-emotion-webapp/api-test.py", line 5, in
import streamlit as st
File "C:\Users\Shoaib\AppData\Local\Programs\Python\Python37\lib\site-packages\streamlit_init_.py", line 49, in
from streamlit.proto.RootContainer_pb2 import RootContainer
File "C:\Users\Shoaib\AppData\Local\Programs\Python\Python37\lib\site-packages\streamlit\proto\RootContainer_pb2.py", line 22, in
create_key=_descriptor._internal_create_key,
AttributeError: module 'google.protobuf.descriptor' has no attribute '_internal_create_key'

Process finished with exit code 1

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.