python中使用phonemizer获取英文文本句子单词音素的方法

本笔记主要为大家详细介绍 python 如何使用 phonemizer 获取英文文本句子单词音素,通过示例代码让大家更详细了解实现过程,有需要的的小伙伴可以参考下。
安装 phonemizer 库:
pip install phonemizer
具体代码实现如下:
# -*-coding:utf-8-*-
# date:2024-11
# Author: DataBall - XIAN
# Function: 获取英文文本句子单词音素
from phonemizer import phonemize
from phonemizer.backend import EspeakBackend
from phonemizer.punctuation import Punctuation
from phonemizer.separator import Separator
# en-gb – 英国英语
# en-us – 美国英语
language_ = "en-us" # 语言
print("语言类型 :{}".format(language_))
backend = EspeakBackend(language_)
print("\n-------------------------------->>")
text = "hello Tom , my name is Lily !"
# 整句音素
phonemes = phonemize(text, language=language_, backend='espeak', strip=True)
print("整句文本: {}: ".format(text))
print("整句音素:{}".format(phonemes))
print("\n-------------------------------->>")
# 按词分割音素
words = [word for word in text.lower().split(' ')]
# 音素之间用空格分割
phonemes_word = Separator(phone=' ', word=None)
dict_ = {word: backend.phonemize([word], separator=phonemes_word, strip=True)[0] for word in words}
print("打印音素字典:")
i = 0
for key_ in dict_.keys():
i += 1
if len(dict_[key_])>0: # 去除标点符号干扰
print(" [{}] {} : {}".format(i,key_,dict_[key_]))
选择语言”en-us“执行 log 如下:
语言类型 :en-us
——————————–>>
整句文本: hello Tom , my name is Lily !:
整句音素:həloʊ tɑːm maɪ neɪm ɪz lɪli——————————–>>
打印音素字典:
[1] hello : h ə l oʊ
[2] tom : t ɑː m
[4] my : m aɪ
[5] name : n eɪ m
[6] is : ɪ z
[7] lily : l ɪ l i
选择语言”en-gb“执行 log 如下:
语言类型 :en-gb
——————————–>>
整句文本: hello Tom , my name is Lily !:
整句音素:hələʊ tɒm maɪ neɪm ɪz lɪli——————————–>>
打印音素字典:
[1] hello : h ə l əʊ
[2] tom : t ɒ m
[4] my : m aɪ
[5] name : n eɪ m
[6] is : ɪ z
[7] lily : l ɪ l i
以上就是关于 python 如何使用 phonemizer 获取英文文本句子单词音素的方法全部内容,下网对有需要的小伙伴提供参考,感谢阅读。
以上关于python中使用phonemizer获取英文文本句子单词音素的方法的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » python中使用phonemizer获取英文文本句子单词音素的方法
微信
支付宝