This project demonstrates a real-time voice gender classification system developed entirely with Digital Signal Processing (DSP) techniques in MATLAB.
It uses pitch-based feature extraction to classify the speaker’s gender without relying on any machine learning or pre-trained models.
The goal is to highlight the power of classical DSP — filtering, energy analysis, and acoustic feature extraction — in solving real-world problems like speech-based classification.
- Real-time recording and analysis of speech input
- FIR band-pass filtering (80–300 Hz) for pitch isolation
- Silence removal using short-term energy thresholds
- Pitch extraction via MATLAB’s built-in
pitch()function - Threshold-based gender decision logic
- Interactive MATLAB GUI for recording and displaying results
- Audio Recording — Captures 5 seconds of voice input using MATLAB’s
audiorecorder(). - Filtering — Applies a FIR band-pass filter (80–300 Hz) to remove irrelevant frequencies.
- Silence Removal — Uses frame-wise energy detection to exclude low-energy (silent) segments.
- Feature Extraction — Extracts pitch using the Normalized Cross Correlation (NCF) method.
- Classification — Determines gender based on average pitch:
- Pitch < 190 Hz → Male
- Pitch ≥ 190 Hz → Female
- Visualization — GUI displays waveform, average pitch, and classification result.
The GUI (built with App Designer) includes:
- Duration control (1–60 seconds)
- “Record & Classify” button with indicator lamp
- Live waveform plot
- Display of extracted pitch and classification output
- The system successfully classified male and female voices in controlled environments.
- Pitch-based thresholds showed strong alignment with expected ranges:
- Male: typically < 190 Hz
- Female: typically > 190 Hz
- GUI provided immediate visual and textual feedback.
- Background noise affecting pitch estimation
- Preserving soft speech segments during silence removal
- Avoiding phase distortion (solved via zero-phase filtering with
filtfilt)
- Implementation of classical DSP techniques in real-time applications
- Design and testing of FIR filters and signal preprocessing routines
- Practical understanding of acoustic feature extraction
- GUI development using MATLAB App Designer
- Improved understanding of speech processing pipelines
| Folder | Description |
|---|---|
/code |
MATLAB source files (.m and .mlapp) |
/docs |
Full report (PDF) with explanation and system design |
README.md |
Documentation and usage overview |
LICENSE |
License information (MIT recommended) |
This project is open-sourced under the MIT License, allowing use, modification, and distribution with attribution.