python_视频中语音识别转出文本

这篇具有很好参考价值的文章主要介绍了python_视频中语音识别转出文本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意:没有“stepladder”的同学建议不要看啦

目录

1. 安装需要的包

2. 视频转音频

3. 对音频进行切割

4. 对视频进行切割

5. 从音频中识别出文本

5.1 使用离线方法

5.2 使用在线方法

5.3 两种方法比较

6. 用到的包下载


1. 安装需要的包

1.1 安装SpeechRecognition包

pip install SpeechRecognition

1.2 安装 PockSphinx包

在线装总是失败,采用本地安装

https://www.lfd.uci.edu/~gohlke/pythonlibs/#pocketsphinx

本机该项目是python3.7的环境所以选择37

python_视频中语音识别转出文本

执行本地安装

python_视频中语音识别转出文本

下载语言包

SpeechRecognition · PyPI

 python_视频中语音识别转出文本

 speech_recognition/pocketsphinx.rst at master · Uberi/speech_recognition · GitHub

python_视频中语音识别转出文本

 python_视频中语音识别转出文本

 python_视频中语音识别转出文本

 将下载后的文件复制到pocketsphinx的语言包目录下

python_视频中语音识别转出文本

 解压后如上图,将这个zh-CN文件夹复制到你自己python环境所在的目录下

python_视频中语音识别转出文本

1.3 安装moviepy

pip install moviepy 

1.4 安装pydub

pip install pydub

2. 视频转音频

from moviepy.editor import AudioFileClip
from moviepy.video.io.VideoFileClip import VideoFileClip
from pydub import AudioSegment
from pydub.utils import make_chunks
import speech_recognition as sr

# 导入视频,提取音频并保存
def video_2_audio():
    # 导入视频
    one_audio_clip = AudioFileClip('D:/temp002/000.mp4')
    # 提取音频并保存
    one_audio_clip.write_audiofile('D:/temp002/000.wav')
    pass

本例中运行的000.mp4文件大约有35分钟,这个提取音频的过程挺慢的,用了好几分钟,为便于甄别最终效果,我对原始文件进行了切割,只对某一部分做处理 

3. 对音频进行切割

def segment_audio():
    pre_save_dir = r'D:/temp002/000_a/'
    audio_file = r'D:/temp002/000.wav'
    audio = AudioSegment.from_file(audio_file,'wav')
    size = 30000 # 切割的毫秒数

    chunks = make_chunks(audio,size) # 30s一个片段

    for i,chunk in enumerate(chunks):
        # chunk是切割好的文件
        chunk_name = "v_{0}.wav".format(i)
        print(chunk_name)
        chunk.export(pre_save_dir+chunk_name,format='wav')
        pass
    pass

将音频文件按30秒的时长进行切割

python_视频中语音识别转出文本 

 

4. 对视频进行切割

# 切割视频
def segment_video():
    pre_save_dir = r'D:/temp002/000_v/'
    video_file = r'D:/temp002/000.mp4'
    source_video = VideoFileClip(video_file)
    video = source_video.subclip(0,30)
    video.write_videofile(pre_save_dir+'0_v.mp4')
    pass

视频切割耗费的时间比较长,我只切割出前30秒

python_视频中语音识别转出文本 

5. 从音频中识别出文本

5.1 使用离线方法

def voice_to_text_local():
    audio_file = 'D:/temp002/000/v_0.wav'
    r = sr.Recognizer()
    with sr.AudioFile(audio_file) as source:
        audio = r.record(source)

    res_txt = r.recognize_sphinx(audio,language='zh-CN')
    print(len(res_txt))
    print(res_txt)

识别出的结果:

长度:241
地 调 降 耗 这里是 独裁 堡 市 选出 本期 士兵 是 中国 版 拉 纽 股 复 牌 系列 的 第四 期 市 地 县 也 使我们 中国 上市 公司 里 涨幅 最大 的 一批 公司 为 家 乐 福 看 他们 上市 以来 的 股价 走势 和 经济部 的 最终 目的是 在 邵 氏 公司 的 年报 里 寻找 确定 新的 投资 机会 本期 我们 付款 的 公司 说 它 称为 是 我们 先 看 上海 同 为 四 上司 以来 的 股价 走势 泰国 卫生 二零零零年 在 儿孙 交 所 上市

结果非常糟糕。。。 

5.2 使用在线方法

附加说明pycharm设置代理ip方法

File->Settings->System Settings->Http Proxy

python_视频中语音识别转出文本

 填上ip和端口

以下回归正题:

def voice_to_text():
    audio_file = 'D:/temp002/000/v_0.wav'
    r = sr.Recognizer()
    with sr.AudioFile(audio_file) as source:
        audio = r.record(source)

    res_txt = r.recognize_google(audio,language='zh-cn')
    print(len(res_txt))
    print(res_txt)

识别出的结果:

长度:149
大家好这里是独裁暴雪选股本期视频是中国百大牛股护盘系列的第4集这个系列是以我们中国上市公司里涨幅最大的一批公司为样本复盘他们上市以来的股价走势和经济路到最终的目的是在上市公司的年报里寻找确定性的投资机会本期我们付款的公司是海康威视我们先看一下海康威视上市以来的股价走势排行为是2010年在深交所上市

 还不错

5.3 两种方法比较

人工识别的结果:

大家好这里是读财报学选股本期视频是中国百大牛股复盘系列的第4集这个系列是以我们中国上市公司里涨幅最大的一批公司为样本复盘他们上市以来的股价走势和经济情况,最终的目的是在上市公司的年报里寻找确定性的投资机会,本期我们复盘的公司是海康威视我们先看一下海康威视上市以来的股价走势,海康威视在2010年在深交所上市

比较两种方法:

本地方法获得的结果基本不可用;在线的方法没有出太多差错

6. 用到的包下载

链接:https://pan.baidu.com/s/1tDO3mNAqraBpbSnjqv6idQ 
提取码:zpjk文章来源地址https://www.toymoban.com/news/detail-401709.html

到了这里,关于python_视频中语音识别转出文本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 开源(离线)中文语音识别ASR(语音转文本)工具整理

    开源(离线)中文语音识别ASR(语音转文本)工具整理 Open AI在2022年9月21日开源了号称其英文语音辨识能力已达到人类水准的Whisper神经网络,且它亦支持其它98种语言的自动语音辨识。 Whisper系统所提供的自动语音辨识(Automatic Speech Recognition,ASR)模型是被训练来运行语音辨识与翻

    2024年02月13日
    浏览(70)
  • 免费的语音识别 API:简单实现语音转文本功能

    语音识别技术在现代信息处理和人机交互中扮演着重要角色。如果您正在寻找免费的语音识别 API,那么您来对地方了!本文将向您介绍一个简单的方法来实现语音转文本的功能,并提供相应的源代码供参考。 首先,您需要使用 Python 编程语言来实现这个功能。Python 提供了许

    2024年02月03日
    浏览(57)
  • 小程序中使用微信同声传译插件实现语音识别、语音合成、文本翻译功能----语音识别(一)

    官方文档链接:https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wx069ba97219f66d99token=370941954lang=zh_CN#- 要使用插件需要先在小程序管理后台的 设置-第三方设置-插件管理 中添加插件,目前该插件仅认证后的小程序。 提供语音的实时流式识别能力,通过获取全局唯一的语音识别管理器rec

    2024年01月19日
    浏览(149)
  • C#使用whisper.net实现语音识别(语音转文本)

    目录 介绍 效果 输出信息  项目 代码 下载  github地址:https://github.com/sandrohanea/whisper.net Whisper.net. Speech to text made simple using Whisper Models 模型下载地址:https://huggingface.co/sandrohanea/whisper.net/tree/main/classic whisper_init_from_file_no_state: loading model from \\\'ggml-small.bin\\\' whisper_model_load: loading

    2024年02月05日
    浏览(40)
  • win10 语音文本识别加入Kangkang

    以下内容保存为.reg文件,导入注册表。 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESOFTWAREMicrosoftSpeechVoicesTokensTTS_MS_ZH-CN_KANGKANG_11.0] @=“Microsoft Kangkang Desktop - Chinese (Simplified)” “804”=“Microsoft Kangkang Desktop - Chinese (Simplified)” “CLSID”=“{179F3D56-1B0B-42B2-A962-59B7EF59FE1B}” “

    2024年02月05日
    浏览(33)
  • 注意力机制与语音识别:未来的声音处理技术

    语音识别技术是人工智能领域的一个重要分支,它涉及到自然语言处理、信号处理、机器学习等多个领域的知识。随着深度学习技术的发展,语音识别技术也得到了巨大的发展,特别是注意力机制的出现,它为语音识别技术提供了一种更加有效的解决方案。 在这篇文章中,我

    2024年04月14日
    浏览(38)
  • 小程序中使用微信同声传译插件实现语音识别、语音合成、文本翻译功能----文本翻译(三)

    官方文档链接:https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wx069ba97219f66d99token=370941954lang=zh_CN#- 要使用插件需要先在小程序管理后台的 设置-第三方设置-插件管理 中添加插件,目前该插件仅认证后的小程序。 文本翻译目前支持的语言有 zh_CN(中国大陆) en_US(英语)。 参数说明:

    2024年01月18日
    浏览(127)
  • 小蜗语音工具1.9、文本,小说,字幕生成语音、多角色对话,语音识别、读取音频字幕

    可以把正本小说,生成字幕文件。不限制文件的大小 a、 分割字符 :默认通过**,。!–:?“”** 来把内容分割成一句一句的字幕,可以自定义 b、 删除符号 :默认删除【】=、等符号,删除内容里面的这些特殊符号并且替换为空格,可以自定义 c、 删除文字 : 第(. )章(

    2024年02月10日
    浏览(54)
  • 小程序中使用微信同声传译插件实现语音识别、语音合成、文本翻译功能----语音合成(二)

    官方文档链接:https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wx069ba97219f66d99token=370941954lang=zh_CN#- 要使用插件需要先在小程序管理后台的 设置-第三方设置-插件管理 中添加插件,目前该插件仅认证后的小程序。 语音合成支持的语言有 zh_CN(中国大陆),en_US(英文)。 参数说明: 1、

    2024年01月16日
    浏览(133)
  • Whisper JAX 语音识别本地部署 whisperX 语音识别本地部署视频教程

    https://nlpcloud.com/zh/how-to-install-and-deploy-whisper-the-best-open-source-alternative-to-google-speech-to-text.html whisper-jax最详细的安装教程 | 一个号称比whisper快70倍的语音识别项目 | 免费开源的语音识别项目 whisperX 语音识别本地部署_JoeManba的博客-CSDN博客 GitHub - sanchit-gandhi/whisper-jax: JAX implement

    2024年02月16日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包