AI文本转语音:Toucan TTS 支持 7000 多种语言的语音合成工具箱,突破性 OCR 技术:支持多种语言识别,媲美顶级云服务

news2024/11/15 15:37:09

AI文本转语音:Toucan TTS 支持 7000 多种语言的语音合成工具箱,突破性 OCR 技术:支持多种语言识别,媲美顶级云服务。

在这里插入图片描述

AI文本转语音:Toucan TTS 支持 7000 多种语言的语音合成工具箱

Toucan TTS是由德国斯图加特大学自然语言处理研究所(MS)精心打造的文本转语音(TTS)工具箱,它支持超过7000种语言,包括多样的方言和语言变体。这款工具箱建立在Python和PyTorch框架之上,不仅易于操作,而且功能全面,能够实现多声源语音合成、语音风格模仿以及人机交互的语音编辑。Toucan TTS适用于教育、朗读、多语言软件开发等多种应用场景。作为一个开源项目,它遵循Apache 2.0许可证,鼓励用户和开发者自由地使用和修改源代码,以满足个性化的应用需求。

功能特点
多语言语音合成
Toucan TTS 能够处理和生成超过 7000 种不同语言的语音,包括各种方言和语言变体,使其成为全球语言支持最广泛的 TTS 项目之一。

多说话人支持
该工具箱支持多说话人语音合成,允许用户选择或创建具有不同语音特征的说话人模型,实现个性化的语音输出。

人机交互编辑
Toucan TTS 提供了人机交互编辑功能,用户可以对合成的语音进行细致调整,以适应不同的应用场景,如文学朗诵或教育材料。

语音风格克隆
用户可以利用 Toucan TTS 克隆特定说话人的语音风格,包括节奏、重音和语调,使合成语音更加贴近原说话人的声音特征。

语音参数调整
Toucan TTS 允许用户调整语音的持续时间、音调变化和能量变化等参数,以控制语音的流畅度、情感表达和声音特征。

发音清晰度和性别特征调整
用户可以根据需要调整语音的清晰度和性别特征,使合成语音更加自然,并符合特定角色或场景的需求。

交互式演示
Toucan TTS 提供了在线交互式演示,用户可以通过网页界面实时体验和测试语音合成效果,帮助用户快速理解和使用工具箱的功能。

应用场景
文学朗诵
合成诗歌、文学作品、网页内容的语音,供朗诵欣赏或作为有声读物。
多语言应用开发
为需要多语言支持的应用程序提供语音合成服务,如国际化软件和游戏。
辅助技术
为视障人士或阅读困难者提供文本到语音的服务,帮助他们更好地获取信息。
客户服务
在客户服务系统中使用,提供多语言的自动语音回复或交互式语音响应系统。
新闻与媒体
自动将新闻文章转换为语音,为忙碌的听众提供便捷的新闻获取方式。
电影和视频制作
为电影、动画或视频内容生成配音,尤其是当原始音频不可用或需要特定语言版本时。
有声书制作
将电子书或文档转换为有声书,提供给偏好听书的用户。
使用与体验
非开发人员可以前往Hugging Face体验Toucan TTS的在线文本转语音和语音克隆Demo

https://huggingface.co/spaces/Flux9665/MassivelyMultilingualTTS

开发人员可以 访问其GitHub项目库,克隆其代码到本地进行部署和运行。

https://github.com/DigitalPhonetics/IMS-Toucan


突破性 OCR 技术:支持多种语言识别,媲美顶级云服务

Surya 是一个文档 OCR 工具包,其功能如下:

支持 90 多种语言的 OCR,与云服务相比更具优势
任何语言的行级文本检测
布局分析(表格、图像、标题等检测)
阅读顺序检测
https://github.com/VikParuchuri/surya

使用场景
文字识别(OCR)
文本检测(Detection)
布局分析
阅读顺序检测

快速使用
安装
您需要 Python 3.9+ 和 PyTorch。如果您使用的不是 Mac 或 GPU 机器,则可能需要先安装 CPU 版本的 torch。请参阅此处了解更多详细信息。

安装方式:

pip install surya-ocr

首次运行 Surya 时,模型权重将自动下载。请注意,该工具目前不兼容 transformers 4.37+ 版本,因此需要使用 4.36.2 版本(已随 Surya 一同安装)。

成功安装 surya-ocr 之后,你可以执行以下步骤,配置 surya 运行环境:

检查 surya/settings.py 中的设置。你可以用环境变量覆盖任何设置。
你的 torch 设备会被自动检测到,但你可以覆盖它。例如,TORCH_DEVICE=cuda。在文本检测方面,Apple 平台的 mps 设备有一个错误,可能会导致其无法正常工作。
文字识别(OCR)
文字识别模型在 4x A6000 上进行了为期 2 周的训练。训练时使用了改进的 donut 模型(GQA、MoE 层、UTF-16 解码、层配置更改)。

from PIL import Image
from surya.ocr import run_ocr
from surya.model.detection import segformer
from surya.model.recognition.model import load_model
from surya.model.recognition.processor import load_processor

image = Image.open(IMAGE_PATH)
langs = ["en"] # Replace with your languages
det_processor, det_model = segformer.load_processor(), segformer.load_model()
rec_model, rec_processor = load_model(), load_processor()

predictions = run_ocr([image], [langs], det_model, det_processor, rec_model, rec_processor)

文本行检测(Text Line Detection)
文本检测模型在 4x A6000 上进行了为期 3 天的训练。它使用一组不同的图像作为训练数据。它使用改进的 segformer 架构从头开始训练,从而降低了对推理 RAM 的要求。

from PIL import Image
from surya.detection import batch_text_detection
from surya.model.detection.segformer import load_model, load_processor

image = Image.open(IMAGE_PATH)
model, processor = load_model(), load_processor()

# predictions is a list of dicts, one per image
predictions = batch_text_detection([image], model, processor)

布局分析(Layout Analysis)

from PIL import Image
from surya.detection import batch_text_detection
from surya.layout import batch_layout_detection
from surya.model.detection.segformer import load_model, load_processor
from surya.settings import settings

image = Image.open(IMAGE_PATH)
model = load_model(checkpoint=settings.LAYOUT_MODEL_CHECKPOINT)
processor = load_processor(checkpoint=settings.LAYOUT_MODEL_CHECKPOINT)
det_model = load_model()
det_processor = load_processor()

# layout_predictions is a list of dicts, one per image
line_predictions = batch_text_detection([image], det_model, det_processor)
layout_predictions = batch_layout_detection([image], model, processor, line_predictions)

阅读顺序检测

from PIL import Image
from surya.ordering import batch_ordering
from surya.model.ordering.processor import load_processor
from surya.model.ordering.model import load_model

image = Image.open(IMAGE_PATH)
# bboxes should be a list of lists with layout bboxes for the image in [x1,y1,x2,y2] format
# You can get this from the layout model, see above for usage
bboxes = [bbox1, bbox2, ...]

model = load_model()
processor = load_processor()

# order_predictions will be a list of dicts, one per image
order_predictions = batch_ordering([image], [bboxes], model, processor)

# Benchmarks

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2058750.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【教程】Win11用户必看:旧版记事本恢复方法!

在Win11电脑操作中,很多用户并不喜欢新版的记事本,想知道有什么方法能够恢复旧版记事本?首先需要打开Win11系统设置选项,点击关闭记事本选项,然后从Windows文件夹或使用notepad命令来打开旧记事本。以下系统之家小编给…

探索Facebook的区块链计划:未来社交网络的变革

随着区块链技术的迅速发展,社交网络领域正面临一场深刻的变革。Facebook,作为全球最大且最具影响力的社交平台之一,正在积极探索区块链技术的应用。本文将深入探讨Facebook的区块链计划,分析其潜在的变革性影响,并展望…

2024年新SCI顶刊算法信息获取优化算法IAO优化Transformer-GRU模型的多变量时间序列预测

matlab R2024a以上 一、数据集 ​ ​ 二、2024年新SCI顶刊算法信息获取优化算法IAO 本期介绍了一种名为信息获取优化算法Information acquisition optimizer,IAO的元启发式算法。该算法受人类信息获取行为的启发,由信息收集、信息过滤和评估以及信息分…

A286螺栓产品特性及主要应用领域

A286螺栓是一种采用A286合金制成的高性能紧固件,具有优异的高温强度、耐腐蚀性能以及良好的加工性能。下面是关于A286螺栓的产品特性和主要应用领域的详细介绍。 产品特性 高温强度:A286合金在高温下仍能保持较高的机械强度,适用于高温环境下…

iOS Forensics with Belkasoft

本课程专为需要在工作中处理 iOS 设备并希望增强知识并获得 iOS 获取和分析实践经验的数字取证调查员而设计。 您将学到什么? 如何使用 iOS 获取的基本和高级方法,例如基于 checkm8 和基于代理的获取 如何从云端获取 iOS 数据 如何分析 iOS 应用程序&…

《黑神话:悟空》引爆全球,AI揭秘中国古建之美

在数字化浪潮的推动下,人工智能(AI)正成为塑造未来的关键力量。硅纪元视角栏目紧跟AI科技的最新发展,捕捉行业动态;提供深入的新闻解读,助您洞悉技术背后的逻辑;汇聚行业专家的见解,…

C++第三十九弹---C++ STL中的无序容器:unordered_set与unordered_map使用详解

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】 目录 1 unordered_set 1.1 unordered_set的接口说明 1.1.1 unordered_set的构造 1.1.2. unordered_set的容量 1.1.3. unordered_set的迭代器 1.1…

电子电路学习之电感

电感作用:电感具有“通直流,阻交流”的作用,即对交流电具有阻碍作用,频率越高,阻抗越大。 电感类型:贴片和直插 电感参数: (1) 精度:电感精度一般为30% (2)直流电阻(DC…

JS获取当前设备名称

在JavaScript中,没有直接获取“当前设备名称”的标准方法,因为这通常涉及访问底层系统信息,而JavaScript在浏览器中运行时通常无权访问这些信息。不过,可以通过用户代理字符串(User-Agent string)来间接推断…

Facebook的区块链战略:如何在社交媒体中实现去中心化

随着区块链技术的发展,Facebook(现Meta)正积极探索如何将这一技术整合进其社交平台中,以提升用户体验和数据安全。区块链技术以去中心化、透明性和不可篡改性为特点,为社交媒体带来了新的可能性。本文将探讨Facebook在…

若依平台/vue2引入代码编辑器(monaco-editor)

需求背景:需要在线编辑javascript代码,方便维护,有些更新不需要再重新部署 一、安装依赖 "monaco-editor": "^0.30.1", "monaco-editor-webpack-plugin": "^6.0.0", 二、 vue.config.js中添加如下配…

How to check the validity of the OpenAI key from python?

题意:如何在 Python 中检查 OpenAI 密钥的有效性? 问题背景: https://pypi.org/project/openai/ "The library needs to be configured with your accounts secret key which is available on the website. [...] Set it as the OPENAI…

RxJava-操作符-mergeDelayError使用

说明 合并多个源Observable的事件,事件不是按照顺序被发射(如需顺序使用concat操作符)。Error事件被延迟发射,针对的是源Observable中的Error事件,多个源Observable都有Error时,会合并Error事件。执行结束 …

vba自动发送邮件的基础步骤?有哪些流程?

vba自动发送邮件如何设置?vba自动发送邮件的技巧? 如果你想节省时间,提高工作效率,学会如何使用VBA自动发送邮件是一个非常有用的技能。AokSend将为你介绍VBA自动发送邮件的基础步骤,并通过简单的分段来详细讲解。 v…

《黑神话:悟空》的发布是否能打开元宇宙游戏世界的门

四年漫长等待,8月20日,国产3A游戏巨制《黑神话:悟空》正式上线并彻底引爆全球市场。这背后不仅是中国游戏史的里程碑,也将为元宇宙的未来夯实地基! 游戏上线后,热度持续飙升,成为了社交媒体和游…

【数据结构与算法】并行搜索

并行搜索目录 一.并行的基础知识1.进程2.线程 二.正常遍历搜索三.线程并发搜索1.线程身份证和句柄2.创建线程3.搜索结构体4.处理函数实现 四.完整代码 一.并行的基础知识 1.进程 说的简单点,进程就是计算机中的多个程序,就相当于多个软件. 比如我同时打开QQ和WX,那么这个就叫…

基于yolov5 人体行为检测 对 跌倒 站立 蹲下 坐下 跑 五种行为检测目标检测

该项目使用YOLOv5深度学习框架来检测图像或视频中人体的五种基本行为:跌倒、站立、蹲下、坐下和跑步。YOLOv5(You Only Look Once v5)是一种高效的物体检测模型,能够快速准确地识别出图像中的目标。本项目具有以下特点&#xff1a…

秋招力扣Hot100刷题总结——动态规划

一、01背包 01背包问题中,遍历顺序可以是先物品后背包,也可以是先背包后物品,但是背包要倒序遍历。 1. 等和子集 题目要求:给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使…

【芯智雲城】星宸科技Sigmastar SSD101芯片_高清显示解决方案

一、方案描述: Sigmastar SSD101是高度集成高性能的display controller,支持模拟的NTSC/PAL/SECAM CVBS和S-video信号输入,可自动检测视频信号源和模式,可自如地切换不同的信号源,内置2D梳状滤波器和AGC,支持6-bit/8-bit TTL/TCON显示屏。芯片LQFP 64pi…

基于大型语言模型的应急人机协同救援关键技术

源自:指挥与控制学报 作者:石响 王天乐 夏乾臣 陈善广 注:若出现显示不完全的情况,可 V 搜索“人工智能技术与咨询”查看完整文章 人工智能、大数据、多模态大模型、计算机视觉、自然语言处理、数字孪生、深度强化学习 课程…