Skip to main content

Python Hotword Detection

Project description

This library provides functionality for detecting a hotword in given audio file using MFCC features and Dynamic Time Warping (DTW) pattern matching algorithm.

Installation

This project is on pypi

To install from pypi:

pip install hotword_detection

From this repository:

git clone https://github.com/sakethgsharma/HotWordDetection.git

Usage

Example scripts

For training a hotword, run:

python bin/trainHotword.py

For testing, run:

python bin/checkHotword.py

Supported features

  • Mel Frequency Cepstral Coefficients

  • Choice of selecting any suitable hot word through appropriate training paradigm

  • Supports variable sampling frequencies

  • Amplitude based Voice Activity Detector(VAD) used during recordings to remove extraneous noise

  • Personalization using automatic DTW thresholding

MFCC Features

MFCC vectors are used in this module since they are the most commonly extracted features used for speech recognition systems.

Parameter

Description

alpha

Parameter used in pre-emphasis filtering. Should be any value between 0 and 1.

N

Number of FFT points.

fs

Sampling frequency of stored audio file.

frame_dur

Duration of 1 speech frame.

num_filters

Number of filters used in the Mel filterbank.

lower_freq

Lower frequency bound used for constructing filterbank.

upper_freq

Upper frequency bound used for constructing filterbank. Should be less than fs/2.

Dynamic Time Warping

Dynamic time warping (DTW) is an algorithm for measuring similarity between two temporal sequences which may vary in speed.

Reference

MFCC tutorial DTW Wiki

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hotword_detection-1.1.tar.gz (6.9 kB view details)

Uploaded Source

File details

Details for the file hotword_detection-1.1.tar.gz.

File metadata

File hashes

Hashes for hotword_detection-1.1.tar.gz
Algorithm Hash digest
SHA256 6218c36e73811abfdedf9d59a4a13f7028f646a4dc118740f21aba7cee12d478
MD5 4a014ac8ca48827802008a061865044e
BLAKE2b-256 b9bebe86681b3014f8a96568bc99d291f458cb14d4c139b28cfaaef66a5667d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page