首页 > 其他分享 >综合设计——多源异构数据采集与融合应用综合实践

综合设计——多源异构数据采集与融合应用综合实践

时间:2023-12-14 21:22:06浏览次数:29  
标签:异构 视频 get 模型 subprocess file filename 多源 综合

这个项目属于哪个课程 2023数据采集与融合技术 (福州大学 - 福州大学计算机与大数据学院)
组名、项目简介 组名:你在跟我作队
项目需求:(1)音视频转文字准确性 (2)实时性 (3)多语种支持 (4)扩展性
项目目标:①搭建轻量级网站平台提供交互。②利用大模型及第三方库解析音视频及图片。③性能测试及优化
项目开展技术路线:(1)HTML/CSS/JavaScript前端编写(2)Python flask请求处理、URL路由、模板渲染,快速搭建轻量级交互式web。(3)Whisper大模型解析视频,多语言语音识别、翻译。pytesseract库及Tesseract识别引擎提取图片文字。
团队成员学号 组长:陈星宇 102102135
组员:
冯展  052101102
王剑瑜 102102113
吴钦堋 052106102
李嘉骏 102102122
戴坤松 032004111
这个项目的目标 (1)搭建轻量级网站平台。(2)输入视频网址,利用大模型解析视频,将音视频转文字,概括视频主要内容,同时获取评论,提炼观看者对视频内容看法。输入图片网址,提取图片上文字。(3)将上述处理结果通过搭建的web网页进行交互式输入输出。(4)性能测试与优化,提高转文字准确性,实时性,多语种,可扩展性和灵活性
其他参考文献 《语音识别技术的研究与发展》
《基于深度学习的语音识别研究》
《Whisper: A Self-supervised Speech Pre-training Method》
《Large-scale Weakly Supervised Pre-training for Speech Recognition》
《Improving the Robustness of Whisper with Domain-Adaptive Training》

项目概述

在当今的信息时代,视频是一种非常流行和有效的传播媒介,它可以展示丰富的内容和形式,吸引人们的注意力和兴趣。然而,视频也有一些缺点,比如占用较大的存储空间和网络带宽,需要较长的观看时间,难以快速获取关键信息等。因此,有时候我们需要从视频中提取出文字的摘要,方便我们进行查阅、复习、引用等操作。

为了解决这个问题,我们利用了whisper和大语言模型这两个人工智能技术,制作了一个视频总结工具,可以从视频中提取语音,转换为文本,并生成摘要。我们的项目目的是为了帮助用户快速了解视频的主要内容,节省观看时间和带宽,提高学习和工作的效率。

项目需求:

  1. 音视频转文字准确性
  2. 实时性
  3. 多语种支持
  4. 扩展性

项目目标:

  1. 搭建轻量级网站平台提供交互
  2. 利用大模型及第三方库解析音视频及图片
  3. 性能测试及优化

项目开展技术路线:

  1. HTML/CSS/JavaScript前端编写
  2. Python flask请求处理、URL路由、模板渲染,快速搭建轻量级交互式web。
  3. Whisper大模型解析视频,多语言语音识别、翻译。pytesseract库及Tesseract识别引擎提取图片文字。

个人负责部分

我负责的部分是视频转语音、大语言模型的对接。

视频转语音

视频来源是 bilibili ,我采用了开源的视频下载工具 you-get,其介绍如下:

You-Get is a tiny command-line utility to download media contents (videos, audios, images) from the Web, in case there is no other handy way to do it.

采用现成的方案是因为 you-get 可以直接解析视频链接,同时集成了下载器。因此我们无需进行相关编码,节省了时间,同时也降低程序出错的可能性。由于 you-get 是命令行工具,因此我们不能在 python 文件中直接进行 import 操作,为此,我使用了 subprocess 让程序可以和命令行交互从而实现视频下载。

def get_video_info(url):
    command = 'you-get --json ' + url
    p = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    return json.loads(p.stdout.read().decode())


def download(url, filename):
    command = 'you-get -o ./ -O ' + filename + ' ' + url
    p = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    return p.stdout.read().decode()

视频下载完成后使用 ffmpeg 进行转码,将其转换为mp3

def convert_to_mp3(filename):
    input_file = glob.glob(filename + '.*')[0]
    output_file = filename + '.mp3'
    ffmpeg.input(input_file).output(output_file).run()
    os.remove(input_file)
    return output_file

最后使用 whisper 进行语音转文字

Whisper is a general-purpose speech recognition model. It is trained on a large dataset of diverse audio and is also a multitasking model that can perform multilingual speech recognition, speech translation, and language identification.

代码如下

model = whisper.load_model('medium')
result = model.transcribe(filename + '.mp3')

medium模型效果较好,但是速度较慢且占用显存较大,在最后的部署中可能需要进行调整。

大模型的对接

视频总结的大模型我选择了文心一言,理由如下:

  1. 对大陆地区友好,无地区限制
  2. 提供了便捷的api
  3. 提供了测试用的token,只需要使用飞桨的access key即可调用

但是其也有一定缺点:

  1. 上下文字数限制4800字,无法总结长视频,相较gpt
  2. 测试api反应较慢 如果有钱我也用gpt

对文心一言的prompt如下:

请根据视频的字幕对视频内容进行总结,字幕可能有错别字以及语义错误,请忽略这些错误。在下一段对话中我会把字幕给你

受字数限制,我们无法将时间码一并提交,且提交内容不含标点符号,但是文心一言返回的结果依旧处于可用范围内。

示例:(BV1yH4y1q7Bn,总结内容受字幕错别字影响,但总体无错误,错误部分以用删除线标出)

这段视频中描述了修理一台 被称为"G哥"的 笔记本电脑的过程,针对该电脑出现的黑屏问题,作者尝试了多种方法进行解决。首先,作者提到了一种可能的解决方案,即更换屏幕,但该电脑的屏幕并没有任何物理损坏,因此这个方法并不适用。随后,作者又尝试了重新安装系统和更新EC(Electronic Control)等操作,但都没有解决问题。最终,作者发现了一个可行的解决方案,即通过调整电源管理设置来解决问题。作者发现,当电脑处于低电量时,会自动降低CPU频率以节省电量,导致电脑运行缓慢,进而出现黑屏等问题。通过调整电源管理设置,使电脑在低电量时不会降低CPU频率,即可解决该问题。

Gitee链接

链接

文件改为了 ipynb 格式,可直接在 jupyter notebook 中运行,也可以直接查看文件已有的历史运行结果。

标签:异构,视频,get,模型,subprocess,file,filename,多源,综合
From: https://www.cnblogs.com/kanata/p/17902041.html

相关文章

  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:Double20000、项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用、项目目标:通过在网页中上传文本、图片、视频或音频分析其中的情感、项......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程右对齐组名、项目简介单元格团队成员学号单元格这个项目目标单元格其他参考文献单元格......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:普雷蒙奇、项目需求:多模态情感分析、项目目标:通过在网页中搜索关键词来得到一个综合的情感分析、项目开展技术路线:前端、python、华为云平台团队成员学号102102112、102102115、102102116、102102118......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术(福州大学-福州大学计算机与大数据学院)组名、项目简介组名:你在跟我作队项目需求:(1)音视频转文字准确性(2)实时性(3)多语种支持(4)扩展性项目目标:①搭建轻量级网站平台提供交互。②利用大模型及第三方库解析音视频及图......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:Double20000、项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用、项目目标:通过在网页中上传文本、图片、视频或音频分析其中的情感、项目开展技术路线:前端3件套、Python、fastapi团队......
  • 软件需求与分析课堂测试十——综合案例分析
    软件需求与分析课堂测试十——综合案例分析 根据下列案例需求描述,回答相关问题:有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下服务:1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。2、开会前允许用户修改会议时间、......
  • 软件需求与分析课堂测试十——综合案例分析(5分)
    根据下列案例需求描述,回答相关问题:有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下服务:1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。2、开会前允许用户修改会议时间、人数,重新选择会议室,甚至取消预订的会议。3、......
  • 软件需求与分析课堂测试十——综合案例分析(5分)
    软件需求与分析课堂测试十——综合案例分析(5分) 根据下列案例需求描述,回答相关问题:有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下服务:1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。2、开会前允许用户修改会议时......
  • 异构内存管理(HMM) 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/mm/hmm.html异构内存管理(HMM)HMM提供基础设施和辅助工具,将非常规内存(例如设备内存,如GPU板载内存)整合到常规内核路径中,其核心是为此专门设计的用于此类内存的structpage(请参见本文档的第5至7节)。HMM还提供了用于SVM(共享虚拟内存)的可选辅......
  • 使用AWS CLI精通AWS ECS:部署和管理的综合指南
    亚马逊弹性容器服务(AmazonElasticContainerService,ECS)为部署和管理容器化应用提供了强大的平台。在本指南中,我们将通过AWS命令行界面(CLI)探讨如何无缝地执行常见的ECS任务。无论您是初学者还是经验丰富的用户,本逐步教程都将帮助您轻松地导航ECS集群、任务和服务。先决条件在我们......