I want to identify male or female voice in a speech signal

조회 수: 48(최근 30일)
Safi Khan
Safi Khan 2016년 10월 1일
답변: Brian Hemmat 2020년 4월 12일
I have taken the speech signal as input using 'audiorecorder' function and converted it into a double precision array.. At the end of execution, i want to display whether the voice is male's or female's.. How to do this? Plz tell me step by step. Can we acheive this using fft plot?
  댓글 수: 2
John D'Errico
John D'Errico 2020년 3월 4일
Note that you can never achieve perfect certainty here, but only a probabilistic prediction.

댓글을 달려면 로그인하십시오.

채택된 답변

Star Strider
Star Strider 2016년 10월 1일
Do some online research and determine the characteristic speech frequencies for adult males and females, or calculate the fft (link) of representative male and female voices, and use that as your guide. Then design bandpass filters for those frequency bands.
There are several ways to design filters in MATLAB with the Signal Processing Toolbox. The designfilt function is probably the easiest to use. My general recommendations (and specific approach to designing IIR filters) are here: How to design a lowpass filter for ocean wave data in Matlab?
Note that classification always involves false positives and false negatives (misclassification), and classification is actually a much more involved process than I’ve outlined here.
This is a relatively straightforward problem otherwise. Have fun with it!

추가 답변(1개)

Brian Hemmat
Brian Hemmat 2020년 4월 12일
Audio Toolbox provides an example: Classify Gender Using LSTM Networks

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by