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

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

时间:2023-12-14 22:58:16浏览次数:35  
标签:异构 const 音频 getElementById file error document 多源 综合

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

这个项目属于哪个课程 2023数据采集与融合技术
组名、项目简介 组名:Double 20000、项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用 、项目目标:通过在网页中上传文本、图片、视频或音频分析其中的情感 、项目开展技术路线:前端3件套、Python、fastapi
团队成员学号 042101414、052101230、102102104、102102105、102102108、102102111、102102157、102102158
这个项目目标 通过在网页中上传文本、图片、视频或音频分析其中的情感
其他参考文献 [1]李慧,庞经纬.基于文图音融合的多模态网民情感识别研究[J/OL].数据分析与知识发现:1-17[2023-12-13].http://kns.cnki.net/kcms/detail/10.1478.g2.20231011.1557.012.html.

项目整体介绍:

项目名称:多模态情感分析系统

项目背景:在当前的数字化时代,情感分析在各种应用中变得越来越重要,如客户服务、市场分析和社交媒体监控。多模态情感分析能够提供比单一模态更丰富、更准确的情感识别和分析。

项目目标:开发一个多模态情感分析系统,能够处理和分析文本、图片、音频和视频数据,从而提供综合的情感分析结果。

技术路线

  • 前端开发

    • 使用HTML、CSS和JavaScript进行界面设计,实现用户与系统的交互。

    • 集成文件上传功能,支持文本、图片、音频和视频文件。

  • 后端开发

    • 使用Python进行后端逻辑的编写。

    • 利用FastAPI框架处理前端请求和数据传输。

  • 数据处理与分析

    • 文本分析:最开始自己训练模型但是后来因为文心一言的准确率更高,因此采用文心一言的接口进行文本情感分析。

      (音频、视频、图片找不到接口,因此自己训练模型)

    • 音频分析

      • 使用RAVDESS数据集进行训练。
      • 对上传的音频文件进行特征提取和情感识别。
    • 图片分析:

      • 使用VGG模型进行图像处理。
      • 利用CK+和FER数据集进行情感分类。
    • 视频分析(找不到可以训练视频的模型,最后只能通过提取音频进行分析)

      • 提取视频中的音频部分。
      • 对提取的音频进行分析,使用同音频分析的方法。
  • 结果输出与展示:将分析结果通过前端界面展示。

最终效果:

通过在本地上传文件进行分析并且得到结果

自己分工:

  • 进行音频相关数据集的查找与训练,在网络资源的帮助下找到了RAVDESS数据集,它在命名上有及其清晰的分类,如下图所示:!

    查找了Audio-Emotion-Classification-master的模型进行训练,但代码调试不佳,且团队成员有更优质的模型因此没有在实际结果中运用上。

  • 进行视频提取音频过程的编码,其实过程比想象中容易且快速

    from  moviepy.editor import *
    
    video = VideoFileClip(r"C:\Users\lenovo\Desktop\video.mp4")
    video.audio.write_audiofile(r"C:\Users\lenovo\Desktop\video_audio.wav")
    

    调用moviepy的库,将mp4的视频格式转化为wav的音频格式,再调用训练好的音频模型进行训练。

  • 通过前端调用接口,这一部分是两个人合作完成的,通过前端向已经部署在服务器上的代码并且查看接口文档发送请求,实现前后端的连接

    //文本分析
    document.getElementById('analyze-text').addEventListener('click', function() {
        const text = document.getElementById('text-input').value;
        const url = `http://1.92.69.178:8000/text?text_word=${encodeURIComponent(text)}`;
    
        fetch(url, {
            method: 'POST',
            headers: {
                'accept': 'application/json'
            }
        })
        .then(response => response.json())
        .then(data => {
            document.getElementById('text-analysis-result').textContent ="预测类别: " + data.response;
        })
        .catch(error => {
            console.error('Error:', error);
        });
    });
    
    // 图片分析
    document.getElementById('analyze-image').addEventListener('click', function() {
        const fileInput = document.getElementById('image-input');
        const file = fileInput.files[0];
        if (file) {
            const formData = new FormData();
            formData.append('file', file);
    
            fetch('http://1.92.69.178:8000/predict-emotion', {
                method: 'POST',
                body: formData
            })
            .then(response => response.json())
            .then(data => {
                document.getElementById('image-analysis-result').textContent = "预测类别: " + data["预测类别:"];
            })
            .catch(error => {
                console.error('Error:', error);
            });
        } else {
            console.log("未选择图片");
        }
    });
    
    // 音频分析
    document.getElementById('analyze-audio').addEventListener('click', function() {
        const fileInput = document.getElementById('audio-input');
        const file = fileInput.files[0];
        if (file) {
            const formData = new FormData();
            formData.append('audio_file', file);
    
            fetch('http://1.92.69.178:8000/audio', {
                method: 'POST',
                body: formData
            })
            .then(response => response.json())
            .then(data => {
                const translatedEmotion = translateEmotion(data.prediction);
                document.getElementById('audio-analysis-result').textContent = "预测结果: " + translatedEmotion;
            })
    
            .catch(error => {
                console.error('Error:', error);
            });
        } else {
            console.log("未选择音频文件");
        }
    });
    
    // 视频分析
    document.getElementById('analyze-video').addEventListener('click', function() {
        const fileInput = document.getElementById('video-input');
        const file = fileInput.files[0];
        if (file) {
            const formData = new FormData();
            formData.append('file', file);
    
            fetch('http://1.92.69.178:8000/video', {
                method: 'POST',
                body: formData
            })
            .then(response => response.json())
            .then(data => {
                const translatedEmotion = translateEmotion(data.prediction);
                document.getElementById('video-analysis-result').textContent = "预测结果: " + translatedEmotion;
            })
            .catch(error => {
                console.error('Error:', error);
            });
        } else {
            console.log("未选择视频文件");
        }
    });
    
  • 前端部署至服务器,在后端已经部署在服务器的基础上,将前端代码同时部署至服务器上,但最开始因为前端代码有中文路径,部署之后无法识别,因此需要经中文路径改为英文。

  • 由于后端服务器在前一天晚上的测试出现了被袭击的情况,于是将前后端部署在不同服务器上,进行了接口的修改

gitee文件夹

标签:异构,const,音频,getElementById,file,error,document,多源,综合
From: https://www.cnblogs.com/Yangyq0103/p/17902365.html

相关文章

  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践​这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:普雷蒙奇、项目需求:多模态情感分析、项目目标:通过在网页中搜索关键词来得到一个综合的情感分析、项目开展技术路线:前端、python、华为云平台、Django......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术作业要求综合设计——多源异构数据采集与融合应用综合实践组名汪汪队项目主题微博评论情感分析项目简介项目需求:1.情绪监测、2.品牌声誉管理、3.市场分析、4.舆论引导、5.个性化推荐、6.社交网络分析项目......
  • 综合设计——多源异构数据采集与融合应用综合实践
    数据采集与融合技术实践多源异构数据采集与融合应用综合实践组名、项目简介<组名:洛杉矶耐摔王、项目需求和目标:文字和音频总结、项目开展技术路线:python>团队成员学号102102127,102102124,102102125,102102123,102102144,102102146,102102126,102102145这个项目的目标......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术(福州大学-福州大学计算机与大数据学院)组名、项目简介组名:你在跟我作队项目需求:(1)音视频转文字准确性(2)实时性(3)多语种支持(4)扩展性项目目标:①搭建轻量级网站平台提供交互。②利用大模型及第三方库解析音视频及图......
  • 综合设计——多源异构数据采集与融合应用综合实践
    多源异构数据采集与融合应用综合实践这个项目属于哪个课程https://edu.cnblogs.com/campus/fzu/2023DataCollectionandFusiontechnology组名、项目简介组名:泥头车项目需求:设计一个包含视频、文本、图片、音频的多源异构数据采集与融合的、能够判断相关性、客观性......
  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践​这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:普雷蒙奇、项目需求:多模态情感分析、项目目标:通过在网页中搜索关键词来得到一个综合的情感分析、项目开展技术路线:前端、python、华为云平台团队......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术作业要求综合设计——多源异构数据采集与融合应用综合实践组名汪汪队项目主题微博评论情感分析项目简介项目需求:1.情绪监测、2.品牌声誉管理、3.市场分析、4.舆论引导、5.个性化推荐、6.社交网络分析项......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:CallofSilence项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用项目目标:通过在web端输入文本、图片、视频等多源数据进行内容提取并对其进行概括技术路线:前端3件套(html、css、js)、flas......
  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:CallofSilence项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用项目目标:通过在web端输入文本、图片、视频等多源数据进行内容提取并对......
  • 综合设计——多源异构数据采集与融合应用综合实践
    基本信息QA这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:喵喵队项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用、项目目标:通过在网页中上传文本、图片、视频或音频分析其中的情感、项目开展技术路线:前端3件套、Python、flask......