Технология распознавания речи, также известная как автоматическое распознавание речи, направлена на использование компьютеров для автоматического преобразования содержания человеческой речи в соответствующий текст и текста в речь.
Распознавание речи Python
pyttsx3 — популярная сторонняя библиотека Python для преобразования текста в речь (TTS). Эта библиотека поддерживает несколько операционных систем, включая Windows, Linux и macOS, и может работать без подключения к Интернету, поскольку использует локальный речевой движок, установленный на вашем компьютере.
Основные особенности:
Установить:
pip install pyttsx3 -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
【Пример】:использовать pyttsx3 Внедрить преобразование текста в речь
import pyttsx3 as pyttsx
engine = pyttsx.init() # Инициализировать движок
engine.say('Император Пустынных Небес, который деспотичен на протяжении веков, Только девушка Гуйчжоу Хуосан') # Добавить текст в голосовую очередь
engine.runAndWait() # Начать голосовой вывод
В Python вы также можете использовать SAPI для преобразования текста в речь. В Python библиотека win32com — это модуль, используемый для взаимодействия с компонентами COM (объектная модель компонентов) в операционной системе Windows. Модуль win32com.client предоставляет интерфейс Python для использования автоматизации COM. К любому приложению или службе Windows, поддерживающему автоматизацию COM, можно получить доступ и управлять им с помощью метода win32com.client.Dispatch. Для SAPI (интерфейс прикладного программирования речи) к его функциям можно получить доступ через библиотеку win32com для преобразования текста в речь (TTS) и распознавания речи.
【Пример】:использовать SAPI Внедрить преобразование текста в речь
from win32com.client import Dispatch
msg = «Император Древних Пустынных Небес деспотичен, «Только девушка Хуосан из Гуйчжоу»
speaker = Dispatch('SAPI.SpVoice') # Создайте экземпляр голосового движка SAPI.
speaker.Speak(msg) # Преобразуйте текст в голос и прочитайте его вслух
del speaker # удалить speaker объект, освобождает связанные с ним ресурсы.
SpeechLib — это COM-библиотека для речевых функций, предоставляемая Microsoft. Она позволяет разработчикам разрабатывать преобразование текста в речь (TTS) и распознавание речи на платформах Windows. С помощью SpeechLib вы можете управлять различными свойствами вашего речевого движка, такими как скорость речи, громкость, интонация и используемая речевая библиотека. Используя SpeechLib, вы можете получать входные данные из текстового файла и преобразовывать их в речь.
Использование SpeechLib требует установки сторонней библиотеки: comtypes
Установить Заказ:
pip install comtypes -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
【Пример】:использовать SpeechLib Внедрить преобразование текста в речь демонстрационный файл:
from comtypes.client import CreateObject
from comtypes.gen import SpeechLib # импортировать SpeechLib
engine = CreateObject("SAPI.SpVoice") # создавать SAPI.SpVoice Примеры объектов
stream = CreateObject("SAPI.SpFileStream") # создавать SAPI.SpFileStream Примеры объектов
infile = 'demo.txt'
outfile = 'demo_audio.wav'
stream.Open(outfile, SpeechLib.SSFMCreateForWrite) # Выходной файл, готовый к записи аудиоданных
engine.AudioOutputStream = stream # Выходной аудиопоток настроен на stream объект
f = open('demo', 'r', encoding='utf-8') # Открыть входной текстовый файл
TheText = f.read() # прочитать файл
f.close() # закрыть файл
engine.speak(TheText) # Механизм использования голоса преобразует текст в голос и выводит его.
stream.close() # Закройте аудиопоток и завершите запись аудиофайла.
PocketSphinx — это легкая библиотека распознавания речи, которая является подмножеством системы распознавания речи CMU Sphinx с открытым исходным кодом. CMU Sphinx, разработанная в Университете Карнеги-Меллон, представляет собой мощную и гибкую систему распознавания речи. PocketSphinx особенно подходит для встроенных систем и мобильных устройств, поскольку он небольшой и быстрый, обеспечивая при этом относительно высокую точность распознавания.
PocketSphinx из Основные особенностивключать:
необходимыйизсторонние модули:PocketSphinxиSpeechRecognition Установить Заказ:
pip install PocketSphinx -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
pip install SpeechRecognition -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
【Пример】:использовать PocketSphinx Преобразование речи в текст
import speech_recognition as sr
audio_file = 'demo_audio.wav'
r = sr.Recognizer()
with sr.AudioFile(audio_file) as source:
audio = r.record(source)
try:
# print('Текстовое содержимое:',r.recouncee_sphinx(audio,language="zh_CN"))
print('Текстовое содержимое:', r.recognize_sphinx(audio))
except Exception as e:
print(e)
Если при использовании PocketSphinx вы столкнулись с проблемами, например, сбоем инициализации, необходимо проверить:
После установки voice_recognition китайский язык не поддерживается. Вам необходимо загрузить соответствующую языковую модель китайского языка и языковую модель в наборе инструментов распознавания речи Sphinx. Ссылка для скачивания:
https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/
Поместите загруженную модель допуска китайского языка и языковую модель в установку. Каталог Python\Lib\site-packages\speech_recognition\pocketsphinx-data