Voice Rehabilitation
Speech Disorder Detection
Acoustic Biomarkers
import librosa
import numpy as np
class SpeechDisorderDetector:
def extract_features(self, audio, sr=22050):
y, _ = librosa.load(audio, sr=sr)
features = {
'jitter': librosa.feature.zero_crossing_rate(y)[0].mean(),
'shimmer': np.mean(np.abs(np.diff(np.abs(y)))),
'HNR': self._compute_hnr(y),
'MFCC': librosa.feature.mfcc(y=y, sr=sr, n_mfcc=13).mean(axis=1)
}
return features
def _compute_hnr(self, signal):
autocorr = np.correlate(signal, signal, mode='full')
autocorr = autocorr[len(autocorr)//2:]
peak = np.max(autocorr[1:])
noise = np.mean(autocorr[10:50])
return 10 * np.log10(peak / (noise + 1e-8))
Voice Prosthetic Control
Articulatory-to-Acoustic Mapping
Text-to-Speech for Laryngectomy
class VoiceProsthetic:
def __init__(self):
self.tts_model = self._load_tts()
self.articulatory_decoder = self._load_decoder()
def synthesize_speech(self, emg_signal):
articulatory_params = self.articulatory_decoder.predict(emg_signal)
return self.tts_model.synthesize(articulatory_params)