Je publierai mon premier article.
Julius est un système de reconnaissance vocale développé par l'Université de Kyoto, et bien que sa précision soit médiocre, il a l'avantage d'être gratuit et peut être utilisé hors ligne.
Dans l'article actuel, je me suis senti ennuyé car il n'y avait que des choses qui ne pouvaient pas être faites sans utiliser la communication par socket pour analyser Julius avec python, alors j'ai appuyé sur la commande pour déplacer Julius directement de python et le code pour analyser le résultat Je l'ai résumé en classe.
Sous le code source de github https://github.com/rirma/JuliusVoiceAnalyzer.git
Veuillez noter que les bibliothèques inutiles seront également installées. Si vous n'en avez pas besoin, supprimez l'installation pip3 en bas.
① Créez un conteneur Docker en appuyant sur la commande suivante dans le dossier téléchargé.
$ docker-compose up -d --build
② Entrez le conteneur créé.
$ docker-compose exec python bash
③ Accédez au dossier où se trouve VoiceAnalyzer.py et exécutez le programme.
# cd opt/public/src
# python3 VoiceAnalyzer.py
④ Si vous dites quelque chose et obtenez le résultat d'exécution suivant, vous réussissez.
start record
Saved.
20201005220733.wav
enter filename->...........................................................................................................................................................................................................enter filename->1 files processed
Bonjour.
Une classe est définie dans VoiceAnalyzer.py pour faciliter l'analyse vocale avec Julius.
def __init__(self, chunk = 1024, format = pyaudio.paInt16, channels = 1, rate = 44100, record_seconds = 2, threshold = 0.1)
Paramètres à modifier au besoin
bloc: bloc de fichier audio canaux: canaux de fichiers audio rate: taux d'échantillonnage record_seconds: durée d'enregistrement (secondes) seuil: Le volume du son pour commencer l'enregistrement (0 à 1), pour empêcher l'enregistrement de démarrer en raison du bruit
def start_record(self, dir_name = '../sound/')
dir_name: nom du répertoire dans lequel le fichier audio est enregistré Valeur de retour: nom de fichier enregistré (nom de répertoire omis)
def analyze_voice(self, file_path)
file_path: fichier à analyser (par exemple '../ sound / 20201005220733.wav') Valeur de retour: chaîne de résultat de reconnaissance vocale de fichier
Julius n'est pas très précis, mais je pense que c'est utile lorsque vous voulez créer votre propre son de démarrage, comme "Hey Siri". J'ai prononcé les sons de démarrage que je voulais que Julius reconnaisse plusieurs fois et j'ai absorbé l'erreur en les énumérant. Nous espérons que vous le trouverez utile pour les applications interactives.
Recommended Posts