当前位置: 代码网 > it编程>前端脚本>Python > python使用phonemizer实现获取英文文本句子单词音素

python使用phonemizer实现获取英文文本句子单词音素

2024年11月14日 Python 我要评论
使用 phonemizer 获取英文文本句子单词音素。安装 phonemizer 库。pip install phonemizer具体代码实现如下:# -*-coding:utf-8-*-# date

使用 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获取英文文本句子单词音素内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com