2017-07-26 927 views
0

做一些测试来综合葡萄牙语书籍的某些部分(pt-BR)我注意到包含罗马数字的章节名称不被识别为数字如果数字高于XXIX(39)。沃森文本到语音罗马数字只识别到XXXIX(39)在pt-BR

类似于数字L(50)或LX(60)将不会被正确地合成为一个数字,它将以字母形式阅读。使用“say-as”SSMLS标签不会导致任何变化。

这是预期吗?有没有可能的解决方法?

回答

2

这是预期吗?

我认为,是的,开发人员通常懒得实施一个通用的解决方案。

是否有任何可能的解决方法?

预处理文本并将数字转换为单词。

2

你有另一种选择是自定义模型,截至https://console.bluemix.net/docs/services/text-to-speech/custom-intro.html#customIntro

描述这里去一个简单的例子

使用此命令创建一个自定义模式

curl -X POST -u ***:*** --header "Content-Type: application/json" --data "{\"name\":\"cURL Test\",\"language\":\"en-US\", \"description\":\"Customization test via cURL\"}" "https://stream.watsonplatform.net/text-to-speech/api/v1/customizations" 

上面会命令返回customization_id(在这种情况下,e250e7ee-fbec-47e8-a1b8-59435c1b18e3

然后使用这个命令添加翻译

curl -X PUT -u ***:*** --header "Content-Type: application/json" --data "{\"translation\":\"thirty\"}" "https://stream.watsonplatform.net/text-to-speech/api/v1/customizations/e250e7ee-fbec-47e8-a1b8-59435c1b18e3/words/XXX" 

最后,尝试

curl -X GET -u ***:*** --header "Accept: audio/wav" --output xxx.wav "https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?text=chapter%20XXX&customization_id=e250e7ee-fbec-47e8-a1b8-59435c1b18e3" 

就会产生一个音频文件,上面写着 “第36章”

PS。对于PT-BR,请参阅https://console.bluemix.net/docs/services/text-to-speech/custom-models.html#customModels,以便您可以使用“语言”选项并将XXX翻译为“trinta”

相关问题