JavaScript 图片转文字,文字转语音
发布日期:2021-06-30 16:33:16 浏览次数:2 分类:技术文章

本文共 1326 字,大约阅读时间需要 4 分钟。

图片转音频

图片转文字 Tesseract.js

Tesseract.js是流行的Tesseract OCR引擎的纯Javascript端口。

在这里插入图片描述

这个库支持100多种语言,自动文本定位和脚本检测,一个简单的界面,用于阅读段落、单词和字符边界框。Tesseract.js既可以在浏览器中运行,也可以在带有NodeJS的服务器上运行。

在这里插入图片描述

Tesseract.js地址

使用方法

先安装好tesseract

npm安装命令:npm install tesseract.js

安装好tesseract后,在node_modules中会出现两个文件夹
在这里插入图片描述

使用script标签导入js

从tesseract.js文件夹中获取tesseract.min.js和work.min.js两个文件

在这里插入图片描述
在这里插入图片描述
从tesseract.js-core文件夹中获取tesseract-core.wasm.js文件
在这里插入图片描述
准备一张带有文字的图片
在这里插入图片描述

提取图片文字

在不设置语言的情况下,默认为英文语言包

			
图片转文字

提取到的图片文字:

在这里插入图片描述

更改语言包

关于语言包的下载,可以从码云上查找tessdata进行下载。

可提供参考地址:

在tesseract解析图片中的文字时,遇到不同国家的文字就可能解析出错,比如下面的中文

在这里插入图片描述
按照英文语言包进行解析,就会解析出错,结果如下
在这里插入图片描述
此时就需要使用中文语言包chi_sim.traineddata,下载下来的语言包的格式需要修改为.gz格式的压缩包

注意

  1. 我在使用中文简体语言包时,遇到了错误。关于中文简体包chi_sim.traineddata.gz的名称会出现错误,修改chi_sim.traineddata.gz名称为chisim.traineddata.gz即可
  2. 网上下载的一些中文简体语言包的识别效果可能较差,识别精度较低。经过测试后反而是中文繁体语言包的识别精度更高。所以下面代码中使用了中文繁体包chi_tra.traineddata.gz。并且中文繁体包不存在命名问题

代码:

				

识别效果:

在这里插入图片描述
测试图片1
在这里插入图片描述
效果:
在这里插入图片描述

文字转语音 SpeechSynthesis

的SpeechSynthesis 接口是语音服务的控制接口;它可以用于获取设备上关于可用的合成声音的信息,开始、暂停语音,或除此之外的其他命令

的SpeechSynthesisUtterance接口表示一个语音请求。它包含语音服务应该阅读的内容以及有关如何阅读的信息(例如语言、音调和音量)

关于SpeechSynthesis的MDN介绍:

关于SpeechSynthesisUtterance的MDN介绍:

由于SpeechSynthesis是HTML5中新增的,所以不需要额外导入其他文件即可使用

测试代码: 点击播放之后即可听到写入的msg转化为语言

	

组合练习:图片转语音

			
图片转语言
识别中...

实现效果:

在这里插入图片描述

转载地址:https://kongchengji.blog.csdn.net/article/details/114485970 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:python爬虫系列——开始入土(六)
下一篇:Three.js杂记(十一)—— 精灵与粒子(绘制中国地图)

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月05日 09时33分48秒