基于图像识别的数据处理系统

news2024/12/23 18:06:36

基于EASYDL模型的图像识别数据处理系统

  • 需求分析

1.1软件背景分析

世界已经进入工业自动化的时代。随着图像识别、语音识别、机械稳定化的发展。自动化已经成为公司或者企业发展的重要方向。自动化是指机器设备或生产过程在不需要人工直接干预情况下,按照预期的目标实现测量、控制等信息处理的过程。工业自动化要求的是自动和精准。自动控制可以通过传感器或者摄像头工具等实现。精准测量或者控制需要图像检测并识别到一定的精度范围。在工业自动化中,图像识别成为机器自动工作的眼睛。

工业自动化中的无人物流搬运系统是一种典型的自动化系统。无人物流系统分为好几大类别,有小型机器人按照路径将货物送到指定区域;有半导体物流天车搬运系统,通过抓取物体实现物体的搬运;有通过大型智能机器进行分类一堆混乱物体系统。这几类物流搬运系统都会用到计算机视觉图像识别,物体检测功能。本文就物流系统中的计算机识别为例进行扩展,设计一个基于EASYDL模型的图像检测和识别系统。

1.2软件作用范围

软件适合工业自动化中物体检测、物体识别,也适合于互联网公司图像处理的识别。就工业中的校对位置,或者寻找物体所在坐标,或者识别物体的距离远近有着重要的价值。

1.3软件开发技术

软件开发技术是软件开发之前要确定的条件之一。软件开发的技术应当选集成度高,开发效率高的技术。

  1. VS2019软件作为编程工具,C#作为编程语言,Sqlserver2019作为数据库软件。通过Web项目为客户提供美观的界面。
  2. EASYDL做为模型进行训练用户提供的图片数据。我们选取优异的模型结果进行导出SDK,为下一步的图像识别或者检测提供可靠的输出结果。
  3. Web项目采用MVC框架。前端用html技术,通过Control处理前端和后端传来的数据,后端是Sqlserver。

1.4功能性需求

  1. 用户注册登录

系统为使用者提供注册功能,需要邮箱验证码进行验证注册,注册数据通过sqlserver保存到数据库。登录需要数据用户名密码验证登录。

  1. 管理员登录

系统有一个管理员默认用户名admin和密码admin,可以上传最新的图像识别信息,或者图像识别博客,能够在主页中进行展示。

  1. 模型图像识别需求

系统需要给出图像识别的具体步骤。给出图像识别先要解决如何在EASYDL中上传大量文件,并能够将训练数据导出到本地,并启动相关服务。

  1. 图像检测识别

通过在网页中选择本地图片,然后进行相关识别,得到识别的图片。得到的识别图片可以下载到本地。

  1. 图像识别数据处理

我们要输入图片识别类型,照相机以及物理距离等得到自己想要校对物体或者照相机如何移动。

1.5非功能性需求

1.输入数据量规定合理,输出格式满足要求。

2.可以随时对数据进行增加,删除,修改,查询各种操作。

3.可以通过日志了解故障现象,发生时间。

4.输入界面美观大方,功能区分显眼,文字描述通俗易懂,并发性高,吞吐量大,系统安全有保障。

  • 软件总体设计

2.1软件结构图

基于EASYDL模型的图像识别数据处理系统共有登录注册模块、管理员管理图像识别信息模块、EASYDL模型训练数据文档模块、图像检测识别模块和识别类型数据处理模块。图1为系统的软件结构图,概括了系统的所有功能信息。

图1 系统软件结构图

 

2.2功能模块组织

登录注册模块

注册采用的是通过邮箱验证的方式进行注册,在注册时会要求用户提供用户名、密码、和邮箱,系统会自动给注册邮箱发送验证码信息,若输入正确则验证成功,成功注册。用户登录需要验证用户名和密码,若与数据库中用户名密码一致则登录成功,进入主界面。

管理员管理图像识别信息模块

管理员账号密码是给定的admin,admin。管理员登录系统中,可以上传、修改、删除等图像识别相关内容信息,内容信息会显示到主界面。

EASYDL模型训练文档模块

系统是根据EASYDL模型进行图像识别的,所以会介绍EASYDL如何训练模型以及导出SDK的步骤。模型中识别可能会涉及到1个或者多个物体的识别,系统会根据识别结果进行获取一定的识别信息。

图像检测识别模块

图像检测模块,需要用户开启本地SDK服务,上传需要检测的图片,图片最好是平行与该物体时的照片。检测时会有结果返回,包括图像识别框、置信度的返回。

识别类型数据处理模块

识别类型数据处理模块是系统中的核心模块。我们识别到了一个物体,这个物体在图像中的位置。工业中的自动校正需要识别出整个物体,同时我们需要移动机械的位置进行矫正从而可以准确控制该物体。我们可以算出当前物体与照相机的距离,也能够拿到物体是不是我们需要的角度或者位置从而进行自动校正工作。

  • 软件详细设计

软件详细设计围绕是软件中的各个功能的细节实现,我们要设计分析软件中的各个功能,思考实现此功能更好的技术或者框架。

C#借鉴了C++和java语言的优秀地方,又在MVC框架及封装上超越了这两种语言,系统通过C# .net技术进行开始项目,这能够保证系统的稳定性。系统采用工厂模式、单例模式等设计模式等保证系统的健壮性。

登录注册模块实现单点登录,登录时候只能保证一个用户的登录。要保证一定用户数量并发性。

  • 软件实现
  • 软件测试

  • 总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/390510.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java分布式解决方案(二)

文章目录🔥分布式事务处理_认识本地事务🔥关系型数据库事务基础_并发事务带来的问题🔥关系型数据库事务基础_MySQL事务隔离级别🔥MySQL事务隔离级别_模拟异常发生之脏读🔥MySQL事务隔离级别_模拟异常发生之不可重复读&…

浏览器渲染原理

阶段 - Parse 1、解析HTML,浏览器将从服务器获取到的HTML文件之后,会产生一个渲染任务,交给消息队列(EventLoop/MessageLoop)。 2、在事件循环机制的作用下,会将渲染任务交给主线程 3、主线程在获取到渲染…

入门vue(1-10)

正确学习方式&#xff1a;视频->动手实操->压缩提取->记录表述 1基础结构 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"&…

LeetCode 1599. 经营摩天轮的最大利润

【LetMeFly】1599.经营摩天轮的最大利润 力扣题目链接&#xff1a;https://leetcode.cn/problems/maximum-profit-of-operating-a-centennial-wheel/ 你正在经营一座摩天轮&#xff0c;该摩天轮共有 4 个座舱 &#xff0c;每个座舱 最多可以容纳 4 位游客 。你可以 逆时针 轮…

0103深度优先搜索和单点连通-无向图-数据结构和算法(Java)

文章目录1.1 走迷宫1.2 图的深度优先搜索实现1.3 算法分析及性能1. 4 单点连通性后记1.1 走迷宫 简单的迷宫&#xff0c;如下图1.1-1所示&#xff1a; 探索迷宫而不迷路&#xff0c;我们需要&#xff1a; 选择一条没有标记过的通道&#xff0c;在你走过的路上铺一条绳子&…

基于linux 实现DNS Client请求

DNS是什么&#xff1a; DNS是域名系统,Domain Name System的缩写,是一个服务。 作用&#xff1a; DNS就是把域名解析为IP地址&#xff0c;提供我们上网&#xff0c;我们能够上网最终是找到IP地址。 DNS请求报文格式&#xff1a; 分别包含 Transaction ID&#xff1a;会话标…

Linux环境开发stm32+vscode编码+gcc-arm编译+openocd烧录

文章目录Linux环境下STM32开发1前言2环境搭建3点灯&#xff1a;脚本方式命令行操作方式具体见参考2vscode将以上命令集成起来4总结Linux环境下STM32开发 1前言 最近在使用Keil开发STM32的时候总感觉代码写起来很很费劲&#xff0c;然后打算用vscode试试&#xff0c;刚开始用的…

js作用域和作用域链

1、局部作用域分为函数作用域和块作用域 1.1、函数作用域: 在函数内部声明的变量只能在函数内部被访问&#xff0c;外部无法直接访问。 总结 1.函数内部声明的变量&#xff0c;在函数外部无法被访问 2.函数的参数也是函数内部的局部变量 3.不同函数内部声明的变量无法互相访…

iscsi windows使用教程与smb das 区别

介绍——为什么不用smb而用iscsi 历史 说到SAN等传统存储设备&#xff0c;我们不得不提到SCSI&#xff0c;SCSI作为外部块设备的连接和传输协议&#xff0c;是最广泛的块设备协议&#xff0c;于1979首次提出&#xff0c;是为小型机研制的一种接口技术&#xff0c;现在已完全普…

taobao.item.joint.img( 商品关联子图 )

&#xffe5;开放平台免费API必须用户授权 关联一张商品图片到num_iid指定的商品中传入的num_iid所对应的商品必须属于当前会话的用户商品图片关联在卖家身份和图片来源上的限制&#xff0c;卖家要是B卖家或订购了多图服务才能关联图片&#xff0c;并且图片要来自于卖家自己的…

汇编指令学习(JMP、JE、JS、JP,JO,JB)

一、JMP无条件跳转不用看标志位&#xff0c;jmp后面跟一个内存地址&#xff0c;直接跳转到该地址jmp 0x0046B994二、JE&#xff08;JZ&#xff09;条件跳转当ZF标致为1的时候发生跳转&#xff0c;为0的时候不跳转&#xff0c;可以双击标志位&#xff0c;进行判断je 0x0046B99F三…

802.11 mac帧

mac帧格式帧格式MAC headFrame Control域Protocol VersionType和SubtypeTo DS和From DSMore FragmentsRetryPower ManagementMore DataProtected FrameOrderDuration/ID域Address域Address1 接收Address2 发送Address3 携带其他信息帮助mac帧传输Sequence Control域管理帧格式定…

vue3:生命周期(onErrorCaptured)

一、背景 当项目如果发生报错&#xff0c;影响程序体验。如果能以捕获的方式得到错误信息&#xff0c;而且还能定位问题&#xff0c;这样就好了&#xff0c;本文介绍onErrorCaptured实现我们想要的效果。 vue2&#xff1a;errorCaptured。使用与vue3同理。 vue3&#xff1a;…

某游戏app sig参数分析

今天要分析的app 叫 dGFwdGFwIDIuMjA= (base64 解码),来一起学习下。 找个视频接口,上来先抓个包,没错今天就是要分析下这个sig参数。 这个app 在高版本上有加固壳,并且还有frida检测(ps:遇到困难不会放弃,以后慢慢研究),这里只是研究sig参数,所以采用低版本了。 把…

ARM uboot 的移植2-从三星官方 uboot 开始移植

一、inand 驱动问题的解决 1、先从现象出发定位问题 (1) 解决问题的第一步&#xff0c;是定位问题。所谓定位问题&#xff0c;就是找到源代码当中导致这个问题的那一句或者那几句代码。有时候解决这个问题需要修改的代码和直接导致这个问题的代码是不同的。我们这里说的定位问…

一文深入分析虚拟机中对象锁实现!

一、前言 编程过程中经常会遇到线程的同步问题&#xff0c;Java 中对同步问题的解决方案比较多&#xff08;synchronized、JUC、原子操作、volatile、条件变量等&#xff09;&#xff0c;其中synchronized 最方便、简单易用&#xff0c;也是java 编程中使用最多的临界区保护方…

接口自动化入门-TestNg

目录1.TestNg介绍2、TestNG安装3、TestNG使用3.1 编写测试用例脚本3.2 创建TestNG.xml文件&#xff08;1&#xff09;创建testng.xml文件&#xff08;2&#xff09;修改testng.xml4、测试报告生成1.TestNg介绍 TestNg是Java中开源的自动化测试框架&#xff0c;灵感来源于Junit…

CSAPP第九章 虚拟内存

理解虚拟内存的原因 本章前部分描述虚拟内存是如何工作的&#xff0c;后一部分描述应用程序如何使用和管理虚拟内存 物理和虚拟寻址 虚拟内存作为缓存的工具 页表 页命中 缺页 虚拟内存作为内存管理的工具 简化链接&#xff0c;简化加载&#xff0c;简化共享&#xff0c;简化…

K8s集群部署

#部署方式有多种&#xff0c;本文采用kubeadm组件的方式来部署K8s集群 安装要求&#xff1a; 至少三台主机内存最少2G&#xff0c;CPU2核集群网络互通可以访问外网禁止swap分区 环境说明: 系统&#xff1a;ubuntu22.04.1 版本信息&#xff1a;kubernetes&#xff1a;1.26.…

HashMap底层的实现原理

目录一、知识点回顾二、HashMap 的 put() 和 get() 的实现2.1 map.put(k, v) 实现原理2.2 map.get(k) 实现原理2.3 为何随机增删、查询效率都很高&#xff1f;2.4 为什么放在 HashMap 集合 key 部分的元素需要重写 equals 方法?2.5 HashMap总结2.6 JDK8 之后&#xff0c;HashM…