【毕业设计_课程设计】基于机器视觉的害虫种类及数量检测(源码+论文)

news2024/9/19 10:41:56

文章目录

  • 0 项目说明
  • 1 研究目的
  • 2 研究内容及结论
  • 3 文件介绍
  • 4 论文目录
  • 5 项目源码


0 项目说明

基于机器视觉的害虫种类及数量检测

提示:适合用于课程设计或毕业设计,工作量达标,源码开放


1 研究目的

研究的目的在于建立一套远程病虫害自动识别系统,有助于缓解农业植保人员和病虫害鉴定专家的人力资源紧张,有助于病虫害知识有限的农业人员进行及时的病虫害检测,并且,通过害虫种类数目的监测和信息收集,定期对昆虫数据进行整理和分析,建立病虫害爆发的规律模型,进而预测判断病虫害爆发的时间,及时通知农业植物保护人员和农户进行合理地科学地预防。提高农作物产量和质量。

2 研究内容及结论

(1) 设计实现了一套可适用于野外的害虫捕获和图像采集装置。该装置放置在农业种植区域,24 小时进行害虫的诱杀和图像采集,同时,装置可以通过无线网络将害虫图像上传至农业监控中心虫类鉴别服务器,并进行害虫种类的识别,进行产区内害虫种类数目的信息收集。

(2) 开发了一套基于机器视觉的昆虫计数工作方法。开发了一套的适用于苍蝇粘板等包含多数昆虫设备的图像的基于机器视觉的昆虫计数工作方法。该方法首先对包含多数昆虫的图片进行二值化预处理,然后进行轮廓的查找,并进行轮廓的计数,得到的数目反映了图片中的昆虫数目的数量级。该方法适用于苍蝇粘板图像等包含多数昆虫虫体的图像上。

(3) 开发了一套基于机器视觉的昆虫识别工作方法和流程。该方法在参考已有研究成果的基础山,选取了昆虫形态特征中的昆虫矩形度、昆虫延长度、昆虫圆形度、昆虫球状性、昆虫叶状性等 5 个特征,进行昆虫图像的特征提取。之后,采用逻辑斯蒂回归模型、线性 SVM 模型和 K 邻近分类器分别进行训练,并测试比较训练结果,以进行分类器算法的筛选。该方法适用于本套图像采集装置。

(4) 设计了一套远程害虫自动识别系统。结合上述三个功能,该系统可以实现:在图像采集节点进行害虫捕获和昆虫图像采集,在虫类鉴别服务器进行昆虫图像的识别和分类。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3 文件介绍

用户界面
MainWindow.ui———————–PyQtDesigner设计的主界面文件
MainWindow.py———————-PyUIC转换而成的主界面程序

运行逻辑
VideoMainWindow.py————–PyQt结合OpenCV实现在界面中显示视频画面
PreProcess.py————————-对源数据样本进行预处理

特征提取
P_circle.py——————————似圆度
P_extend.py—————————-延长度
P_leaf.py——————————–叶状性
P_rect.py——————————–矩形度
P_spherical.py————————球形度
GetFeatures.py———————–提取特征的模块
GetFiveFeatures.py—————–五个特征提取的测试代码
FeatureExtract.py——————-提取样本库特征保存到CSV文件

机器学习模块
LinearSVM.py————————-线性SVM分类器的训练和模型保存
LinearRegression.py—————逻辑回归分类器的训练和模型保存
KneiborsClassfier.py—————KNN分类器的训练和模型保存
Predict.py——————————加载预训练模型,对特征进行预测
Thresholding.py—————————大津法程序实现和OpenCV大津法函数的效果对比
Count.py————————————-实现加载图片,二值化(大津法),查找轮廓进行计数的效果
GetChineseName.py——————–分类中英文转换

4 论文目录

摘 要 
ABSTRACT 
目 录 
第 1 章 绪论 
1.1 课题研究的背景和意义
1.2 国内外研究现状 
1.2.1 国内研究现状 
1.2.2 国外研究现状 
1.3 研究的内容和目的
1.3.1 研究内容 
1.3.2 研究目的 
1.4 章节安排 
第 2 章 系统总体设计 
2.1 系统设计目标 
2.2 系统总体架构 
2.3 图像采集节点 
2.3.1 装置总体设计 
2.3.2 运行流程 
2.4 虫类鉴别服务器和虫类信息数据库设计
2.4.1 服务器设计 
2.4.2 服务器虫类分类器实现 
2.4.3 PC 上的昆虫分类识别软件 
第 3 章 昆虫图像预处理与计数研究
3.1 昆虫图像的采集 
3.2 昆虫图像的预处理 
III3.2.1 图像的灰度化,高斯滤波和尺度变换
3.2.2 二值化 
3.2.3 大津法 OTSU 在昆虫图像二值化上的应用 
3.3 昆虫图像的计数
3.3.1 检测轮廓 
3.3.2 昆虫计数 
第 4 章 昆虫图像特征提取与识别研究 
4.1 特征的选取 
4.2 特征描述以及提取方式
4.3 分类器的选择和训练
4.4 机器学习结果分析 
4.4.1 性能评价指标 
4.4.2 三种分类器的性能比较 
第 5 章 总结与展望 
5.1 总结 
5.1.1 完成的工作
5.1.2 创新点和不足之处 
5.2 展望 
致谢

5 项目源码

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

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

相关文章

UNION 和 UNION ALL

合并查询结果 利用UNION关键字,可以给出多条SELECT语句,并将它们的结果组合成单个结果集。合并时,两个表对应的列数和数据类型必须相同,并且相互对应。 各个SELECT语句之间使用UNION或UNION ALL关键字分隔。 语法格式 SELECT c…

(附源码)node.js外卖平台 毕业设计 151448

摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于外卖平台当然也不能排除在外,随着网络技术的不断成熟,带动了外卖平台,它彻底改变了过去传统的管理方式…

神州数码交换机CS6200命令(二)

神州数码交换机CS6200命令(二) 1.基于流的重定向 QOS(Quality of Servcie)-服务品质保障,不产生新的带宽而是根据需求控制带宽 简易配置顺序: 1.配置分类表(class map) 对数据建立一个分类规则 2.配置策略表(policy map) 对…

左(9)--题目讲解

前言 仅记录学习笔记,如有错误欢迎指正。 题目: leetcode的洗衣机问题 思路: 首先看能不能数量相等 总和%机器数量 0 然后分情况讨论:对于任何一个位置都有至少需要搬动n次,最大值就是答案! 题目2&am…

APT最佳学习案例:写个简易版 ButterKnife

前言 目的:写个简易版 ButterKnife,借手写 ButterKnife 去了解如何实现注解、annotationProcessor 的等使用。 先看下butterknife的结构: 源码地址 https://github.com/LucasXu01/MyButterKnife ButterKnife的使用 在build.gradle添加依…

Java : 详解八种基本数据类型的包装类

Java : 详解八种基本数据类型的包装类 每博一文案 人生路漫漫越长大,越明白每个人的路都是漫长而艰辛的。无论我们有多累,我们都无路可退。 就像马丁说的那样:每一个强大的人都曾咬着牙度过一段,没人帮忙,…

Rabbitmq与交换机

目录 一、交换机简介 1、Exchange(交换机)的作用 2、Exchange(交换机)的类型 3、交换机的属性 二、交换机的使用 1、创建项目 2、给子模块添加依赖( rabbitmq-provider、 rabbitmq-consumer) 3、直连交换机(Direct Exchange)使用 4、主题交换机(Topic Exchange)的使用 5、…

【图像分割】和声搜索算法图像多级阈值分割【含Matlab源码 2044期】

⛄一、和声搜索算法的图像阈值寻优算法简介 苹果图像识别是指将苹果果实从枝叶、土壤、天空等背景中分离出来, 即图像分割。最大类间方差法 (OTSU算法)是由日本学者大津展之 (OTSU) 提出的全局阈值选取方法。该方法存在缺乏自适应性、易造成噪声干扰和过分割现象、运算需要大量…

[附源码]计算机毕业设计Python的项目管理系统(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

Kafka 安装 快速入门

Kafka 安装 快速入门 Apache Kafka是流行的用于大规模收集、处理、存储和分析数据的开源流处理系统。它以其卓越的性能、低延迟、容错和高吞吐量而闻名,能够每秒处理数千条消息。常用来构建数据管道、利用实时数据流、实现系统监控、数据集成。 如上图,…

【MindStudio训练营第一季】基于MindX的U-Net网络的工业质检实践作业

1.1 作业介绍 1.1.1 作业背景 随着新一轮科技革命和产业变革的加速演进,全球各国都在借助新技术推动制造业升级,从工业2.0自动化开始兴起,到工业3.0信息化普及,如今正迈向工业4.0智能化。借助IoT、工业大数据、人工智能等先进技…

“==” 操作符 与 equals 方法的区别,toString

“” 操作符 与 equals 方法的区别,toString 每博一文案 读过这样一段话:很多人都羡慕我的坚强独立,夸赞我的善解人意。无论什么事情, 我都会把别人放在首位,宁愿自己吃亏,也会尽力满足别人的需求&#xf…

Allegro关闭线段显示不连续效果操作指导

Allegro关闭线段显示不连续效果操作指导 用Allegro进行PCB设计的时候偶尔会出现线段不连续的情况,尤其是在线段拐弯处,实际上并不是线段没有连接上,只是一个显示效果而已,如下图 如何去关闭这个显示效果,具体操作如下 选择Setup-Design Parameter 选择Display 取消勾…

java中实现分页的常见几种方式

文章目录1. 前言2. 先说结论3. 例子1. 数据库SQL的限制条件(limit、fetch)2. 使用List集合的截取功能实现3. 插件PageHelper1. 前言 无论是自我学习中,还是在工作中,固然会遇到与前端搭配实现分页的功能,发现有几种方式&#xff…

IIC总线(二)-----IIC控制器与MPU6050

1.Exynos_4412下的IIC控制器 Exynos 4412 SCP简化指令集计算机(RISC)微处理器支持四个多主控间集成电路(I2C)总线串行接口。为了在连接到I2C总线的总线主机和外围设备之间传输信息,我们使用了一条专用的串行数据线&am…

IO流(一)

IO流的思维导图如下所示: 我们下来对文件、IO流原理及流的分类,节点流(访问文件的、访问数组的、访问管道的)和处理流(缓冲流、对象流、管道流),输入流(InputStream和Reader)和输出流…

[附源码]Nodejs计算机毕业设计基于协同过滤技术的旅游景点购票系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

Python+Selenium自动化测试详细教程

前言 PythonSelenium 来实现的web端自动化, 以下演示会用到禅道、百度和自己编写的html. 一、准备工作 1、安装 安装Python 3安装selenium库,命令:pip install selenium搭建禅道环境 2、导入浏览器驱动 selenium操作不同的浏览器,需要下…

Windows10 系统下载网址推荐(二)

Windows10 系统下载网址推荐(二)1. 计算机操作系统概述2.HelloWindows3. 山己几子木4. xitongku5. TechBench结束语1. 计算机操作系统概述 操作系统(Operating System,OS)是一组主管并控制计算机操作、运用和运行硬件…

设计一个接口务必考虑好这14个基本点

目录:导读 前言 1、入参合法性校验 2、接口的版本控制 3、接口考虑幂等性 4、接口考虑防止重复请求 5、提高接口的响应时间 6、接口限流控制 7、黑白IP白名单 8、敏感数据脱敏 9、请求接口的先决条件-token 10、记录接口请求日志 11、调用第三方接口要考…