首页 > 编程语言 >ELEC 292球门 桌面应用程序

ELEC 292球门 桌面应用程序

时间:2024-04-07 14:23:03浏览次数:31  
标签:ELEC 桌面 收集 292 应用程序 可视化 使用 数据

项目说明书球门该项目的目标是构建一个桌面应用程序,可以区分“行走”和使用从加速度计收集的数据,以合理的精度“跳跃”智能手机。描述该项目涉及构建一个小型而简单的桌面应用程序,该应用程序接受加速度计CSV格式的数据(x、y和z轴),并将输出写入单独的CSV文件。输出CSV文件包含相应输入数据的标签(“漫游”或“跳跃”)。对于出于分类目的,系统将使用一个简单的分类器,即逻辑回归。为了完成最终项目的目标并完成报告,以下7个步骤需要:
1.数据收集2.数据存储3.可视化4.预处理5.特征提取与归一化6.培训模特7.使用显示输出的简单UI创建一个简单的桌面应用程序步骤1。数据收集在这一步中,您需要在“行走”和“跳跃”时使用智能手机收集数据。那里是许多不同的应用程序,您可以使用这些应用程序从智能手机中收集加速度计数据。例如,您可以使用一款名为Phyphox的应用程序,该应用程序适用于iOS和Android,并且允许您将记录的信号输出为CSV文件。其他应用程序也可以接受。数据收集协议:回想一下,在收集数据时,数据集的多样性将允许您的系统在部署时可以更好地工作。(
a) 因此,为了最大限度地提高多样性,每个团队成员必须参与数据收集过程,才能创建总共3个子集(每个成员
(b) 为了进一步最大限度地提高数据集的多样性,手机应该放在不同的位置位置。例如,你可以把手机放在你的前口袋、后口袋、夹克,拿在手里等。
(c)每个成员收集数据的时间必须超过5分钟。请注意,收集一个大致平衡的数据集非常重要。在其他单词,用于每个用户、每个动作(“行走”与“跳跃”)、每个电话位置和其他位置应该大致相同。2.步骤2。数据存储将数据集(所有子集)传输到计算机并标记后,存储HDF5文件中的数据集。此HDF5文件必须按以下方式组织:保持最初收集的数据始终是一个好主意,这就是为什么我们有我们在这张图片右侧看到的结构。但为了创建一个简单的人工智能系统,您需要创建单独的训练和测试拆分。为此,将每个信号划分为5秒窗口,对分割的数据进行混洗,并使用90%用于训练,使用10%用于测试。这个新的数据集还必须存储在HDF5文件中,如左侧所示。步骤3。可视化数据可视化是数据科学领域的一个关键步骤,它将使您能够发现数据,并熟悉将要使用的数据。所以,在这个步骤,您将需要从您的数据集中(所有三个轴)以及从这两个轴中可视化一些样本类(“行走”和“跳跃”)。一个简单的加速度与时间的对比将是一个好的开始。而且考虑其他创造性的方式来显示数据,以代表您的数据集。为数据集和传感器的元数据提供一些可视化。不要忘记使用好的可视化原理。步骤4。预处理记住,垃圾进,垃圾出!几乎任何数据集,无论您在收集,将不可避免地包含一些噪音。首先,数据可能包含噪声,这可能通过移动平均滤波器来减少。第二,在特征提取(下一步)后,尝试检测并删除您收集的数据中的异常值。请注意,如果通过删除异常值变得太不平衡,纠正这一点。最后,规范化数据,使其适合逻辑回归步骤5。特征提取与归一化从每个时间窗口(您创建并存储在HDF5文件中的5秒段),提取至少10个不同的特征。这些特征可以是最大、最小、范围,均值、中值、方差、偏度等。还可以探索其他特征。After功能已经执行了提取,您将被要求应用规范化技术防止具有较大尺度的特征不成比例地影响结果。常见的标准化技术包括最小-最大缩放、z-score标准化等。步骤6。创建分类器利用预处理后的训练集的特征,训练逻辑回归模型进行分类将数据分为“行走”类和“跳跃”类。训练完成后,将其应用于测试集并记录准确性。您还应该在培训过程。
请注意,在培训阶段,测试集不得泄漏到培训中集合(用于训练和测试的片段之间没有重叠)。3.步骤7。在桌面应用程序中部署经过训练的分类器最后一步是在桌面应用程序中部署您的最终模型。用于构建简单的图形用户接口,代 写ELEC 292球门 桌面应用程序您可以使用Tkinter或PyQt5库。如前所述,此应用程序必须接受CSV格式的输入文件,并生成一个CSV文件作为输出,其中包括标签(行走或跳跃)输入文件中的每个窗口。为您构建的应用程序运行演示输入一个CSV文件,应用程序会生成一个表示输出的图。一旦部署,如何你是否测试了系统以确保它按预期工作?步骤8。演示视频使用创建的应用程序运行演示时录制屏幕。视频应包括所有团队成员,并显示数据收集过程的简短片段,以及正在运行的应用程序。视频还应该用几句话来解释你的项目。它应该在1到3之间分钟步骤9。汇报为项目写一份报告。项目应包含:-包含以下内容的标题页:课程:ELEC292项目报告组号:_姓名、学号和电子邮件地址:日期-在标题页之后,文档的其余部分必须使用12点Times New Roman字体,单间距,1英寸边距,页码位于每页的底部中心。-每个学生都必须提交一份与队友相同的单独副本。这是作为签字,表明每个成员都参与并同意所容纳之物它还将使分级和跟踪更容易。-根据经验,报告应在15至20页之间,包括参考资料和数字。-请注意,当您引用在线资源(文章、网站等)时,引用必须在文件的参考部分(在文件末尾)提及,以及文中应提及参考文献。以下是如何适当的简要描述应使用引文和参考文献:https://labwrite.ncsu.edu/res/res-citsandrefs.html-在本报告中,您必须使用IEEE格式作为参考。-请注意,在您的报告中,您不能从其他资源“复制粘贴”文本,即使你在引用它们。文本应正确阅读、理解和转述引用原始参考文献。-报告应进行适当的编辑(语法、打字错误等)。-报告应清楚地描述每个步骤,并提供所需的材料。-报告必须包含以下部分:4.o 1。数据收集:您是如何收集数据、标记数据、将数据传输到PC,以及在数据收集步骤中,您遇到了哪些挑战。是怎么做到的你战胜了他们?提及所有使用的硬件和软件。o 2。数据存储:提供对所收集数据存储方式的完整描述。o 3。可视化:提供您为可视化目的创建的所有绘图,并为它们中的每一个提供适当的描述。你学到了什么?如果你要重新收集数据,知道你从这些图表中学到了什么,你会如何以不同的方式做事?o 4。预处理:清楚地描述您为预处理所采取的措施,以及它是如何影响数据的(你也可以在这里使用一些图表)。你为什么选择你所做的参数(例如,移动平均线的大小)?o 5。特征提取和规范化:您提取了哪些特征,为什么?这里的参考资料可能很有用。解释特征提取的过程和规范化,然后证明你的选择是合理的。o 6。培训分类器:描述您培训物流的方式回归模型。本节必须包括学习曲线和您的准确性在训练和测试集上。你在这里使用了什么参数?为您的答案。o 7。模型部署:本节应包括如何部署的详细信息将经过训练的模型转换为桌面应用程序。提供您创建的GUI的屏幕截图以及它的描述,并证明您的设计选择是合理的。-在报告末尾,必须添加一份参与报告。请注意这个项目应该一起合作完成。一个人这样做是不可接受的做技术工作,另一个简单地写报告。话虽如此,一个合理的允许对打字或其他简单任务进行分工。在报告的最后,提供一个表格,清楚地显示哪些成员出席了会议并做出了贡献每个问题。请注意,如果有人不拉动大约1/3的重量项目中,他们可能会失分。屈服以下项目需要在OnQ中提交:1.PDF格式的项目报告2.您以上述格式保存的HDF5文件3.前面描述的视频4.您的干净且可执行的Python代码,其中包含从
(1)可视化,
(2)预处理,
(3)特征提取,
(4)训练和运行模型奖金第1部分:最终项目的这一部分不是强制性的作为可交付的奖金,最多可获得10您项目的奖励积分(满分100分)!

您创建的应用程序可以脱机工作。换句话说应用程序无法对智能手机中的活动进行分类实时。对于项目的奖励部分,我们的目标是构建一个桌面应用程序,它可以实时的5.实时读取智能手机上的加速度计数据,并立即对其进行分类。像如上图所示,您的智能手机需要将加速度计数据发送到应用程序实时显示,应用程序将实时显示动作类别(例如“行走”)。

提示:为了在线读取加速度计数据,您可以使用“启用远程访问”选项Phyphox应用程序的。通过这样做,您将可以访问网页中的加速度计数据。然后,您可以使用Beautiful Soup和Selenium库来读取数据。替代方式包括使用蓝牙将数据实时发送到PC。第2部分:在这一步中,您必须从头开始实现SVM和随机森林分类器而不使用任何现有的模型库,如scikit-learn。您可以自由使用用于基本操作的库,例如NumPy。记录已实现模型的准确性您在测试集上从头开始构建的。然后,比较您自己实现的性能模型(不使用库)与使用预先存在的库实现的模型。这直接比较将突出定制模型与标准模型的功效库模型。最后,提供关于模型比较的总体见解,并解释结果。奖金部分的可交付成果:1.报告应延长3-5页。这些附加材料应包括:o数据如何实时传输到PC的所有细节o对桌面应用程序及其GUI所做任何更改的描述o对经过训练的分类器所做的任何更改的描述o如何实现SVM和随机森林的一般描述从头开始o显示您实施的测试集上的模型准确性的表格,以及模型存在于标准库中2.视频应清楚地显示一个人携带手机,桌面应用程序实时对他们的行为进行分类3.干净且可执行的Python代码一般注意事项:如果你尝试了任何事情,但都无法使其发挥作用,无论是针对项目或奖金部分,你应该提到你做了什么,你的假设是什么因为它不起作用,以及事情应该如何改变以使它起作用,接受一些部分标志。分级:将使用5分制对项目的不同方面进行评分。此5分制将如下所示:质量等级定义优秀的4/4解释清晰易懂理解,完成好的3/4解释有点欠缺清晰或完整,但总体状况良好平均2/4几个方面缺失或不准确的有相当多的改进的空间6.差1/4大多数方面缺失或不准确的没有完成0/4这个问题根本没有得到回答将使用以下分级方案:该项目的最终成绩将从100分中计算出来。奖金部分最多可获得10分则添加到此级别(如果可用)。最后的分数将乘以0.3得到你的项目成绩为30分。注:在最终项目提交中禁止使用生成AI,如ChatGPT,并且被认为违反了女王大学的学术诚信原则。请注意,我们将使用最新的人工智能内容检测器随机检查分配任务等级权重1.数据收集/4完整性/彻底性、平衡性、多样性、良好数据收集原则3.2.数据存储/4以指定格式正确存储数据,合理列车测试拆分,无数据泄露2.3.可视化/4可视化的几个样本,每个类别都表示,元数据可视化,额外的创意情节,很好可视化原理2.4.预处理/4去除/减少异常值,去除/减少噪声、不平衡的讨论或补救、规范化、,预处理后数据的进一步可视化2.5.特征提取/4识别和提取至少10种不同的特征功能,正确2.6.模式培训/4正确的构建合理的结果以及模型的训练,27.桌面应用程序/4漂亮/干净的UI、功能、系统测试28.演示视频/4作品的正确描述和演示,参与来自所有人3.9.报告/4结构合理、描述详细、质量高图像、写作和编辑质量、参考资料和引文、封面、工作分工说明,提供第页第9步中描述的所

标签:ELEC,桌面,收集,292,应用程序,可视化,使用,数据
From: https://www.cnblogs.com/gzashang/p/18118958

相关文章

  • 搞flask应用程序
    MicrosoftWindows[版本10.0.22631.3296](c)MicrosoftCorporation。保留所有权利。//////////////////////////////////////////////////////////////////////////////////////////////////>pipinstallFlaskRequirementalreadysatisfied:Flaskind:\python\lib\site-pa......
  • layui多选xm-select
    直接上代码xm-select.js下载地址https://pan.baidu.com/s/1YXDsr9tn8EOeX0vEzPwGdQ?pwd=nvdv提取码:nvdv第一步:下载第二步:引入xm-select.js第三步:写一个`<divid="demo1"></div>`第四步:渲染 vardemo1=xmSelect.render({ el:'#demo1', language:'......
  • 使用 Prisma ORM 和 Cloudflare D1 构建应用程序
    自2017年推出Workers以来,Cloudflare一直引领边缘计算领域。Cloudflare最近通过D1发布了本机无服务器数据库。我们现在可以使用PrismaORM与D1一起构建应用程序。将数据库部署到边缘CloudflareWorkers是一种分布在全球范围内的轻量级无服务器计算形式。它们......
  • 从0到1搭建一个Vue3+Electron的框架
    1.前言:上篇文章中使用到了Vue+Electron框架,这一篇文章主要讲解这个框架如何搭建2.Vue3+Vite项目搭建执行命令行,创建Vue3+Vite脚手架:npmcreatevite或yarncreatevite修改脚手架中的无用部分删除src/components下的所有文件修改src/App.vue内容<!--*@......
  • electon的入口文件 main 指定
    任何Electron应用程序的入口都是 main 文件。这个文件控制了主进程,它运行在一个完整的Node.js环境中,负责控制您应用的生命周期,显示原生界面,执行特殊操作并管理渲染器进程(稍后详细介绍)。执行期间,Electron将依据应用中 package.json配置下main字段中配置的值查找此文件,您......
  • CHC5054Web应用程序开发
    Web应用程序开发:课件分配这门课程相当于CHC5054模块100%的分数。您还需要以下模块的技能:●CHC4008(Python编程)●CHC4007(设计报告)●CHC5049(数据库设计)●CHC5226(安全实施)规格您的任务是开发和测试一个简单的基于网络的学习管理系统的完整堆栈,该系统旨在促进教育课程的管理、交付和跟......
  • 【计算机网络】select/poll
    多路转接-select/poll一、I/O多路转接之select1.select接口2.select的使用3.select的优缺点二、I/O多路转接之poll1.poll接口2.poll的使用3.poll与select的对比一、I/O多路转接之select多路转接属于IO复用方式的一种。系统提供select()......
  • Microservice - Solution Selection for Distributed Transaction Framework
      ......
  • 06 MySQL数据操作DML---插入insert、删除delete、更新update、查询select
    DML是指数据操作语言,用来对数据库中表的数据记录进行更新插入insert向表中指定字段插入数据insertinto表名(字段名1,字段名2,字段名3,...)values(字段名1值,字段名2值,字段名3值,...)INSERTintomy_student(id,`name`,age)values(2,'Jack',12);字段列表不一定非要......
  • KingbaseES 为什么select主键列不走索引
    背景有客户提出一个问题。一个类似这样的SQL语句,selectcount(id)from为什么执行计划用全表扫,不用索引。id列上有主键。分析test=#explain(analyze,buffers)selectcount(id)fromt1;QUERYPLAN---------------......