粮仓玉米抽样检测分级系统设计

摘要

在对玉米的品质进行检测时经常应用到的技术是机器视觉技术,此技术在当前的应用中已经逐渐成为最关键的检测方法之一。机器视觉技术由于受到图像处理技术的支持在玉米品质检测方面更加科学与专业,由此在以后的技术应用与发展中越来越有发展前途。

本次毕业论文的研究研究对象是对玉米品质检测的方法进行考量,应用的主要研究技术与方法是数字图像处理法与机器视觉技术。在当前的发展过程中两种方式相互结合在对玉米品质进行筛选时的应用越来越来越广泛,此种方法检验的标准是是否具有准确性与实时性,并且能够对玉米的不同品质进行精准的检测与精细化的分级。

在实际的玉米品质检测中重点检测两个部分分别是玉米的内在品质与外在品质,其中外部品质检测主要检测玉米的尺寸大小,玉米品质检测以表征玉米的长宽范围作为检测的关键指标。在玉米品质检测的过程中如何把控实时性这一原则在论文中进行了充分的探讨,采取的主要工作有试着将流水线与图像处理两种方法结合搭建出相应的实验台,进一步的将玉米品质的分级与检测速度提升。在对玉米的外形按照指数进行分级,与检测时主要应用的技术是机械视觉技术,这个过程中应用的方法有边缘检测法与颜色模型转换法。

本次的设计是将研究的问题分模块进行,分别将分级视觉系统与玉米品质检测中的相应功能进行了模块划分,并对每项的功能进行了简单的阐述。在文中对系统标定模块进行了详细的研究与探讨,主要围绕着重点内容是求解过程、原理与进行标定时应用的方法。为了在对玉米外部品质检测的过程更为精确与方便,因此将检测的精度设计与标定出来。针对论文中对玉米像素尺寸的检测方法的需要将现有的最小外接矩形法进行升级与改变以适应本次论文的实际需求,在对样本玉米的尺寸大小进行详细的标定时,可以利用已经在系统模块中标记与设定好的参数。在对实际应用过程中参数的真实尺寸与实验得到的像素尺寸进行拟合,得到的拟合效果非常好,说明两者具有十分高的相关性。对全文工作进行总结以及对未来工作进行展望。

关键词:玉米;图像处理;分级系统设计

  第1章 绪论

  1.1 研究背景

我国是世界上的农业大国,同时也是世界上国土面积排名第三的国家,国家的农业作物中年产量中,玉米产量仅次于水稻,位于我国农作物产量第二位。玉米的检测分级自然就进入了公众视野,成为了被广泛关注的问题。

我国现在使用的玉米检测分级的方法还是以人工为主,但在一般的人工分级过程中存在着人的视觉疲劳乃至精神疲劳导致的误判现象,甚至由于人的主观意志而存在“人情粮”等问题。并且国内的检测设备品种并不丰富,无法达到全面覆盖农产品在各方面分级检测的需求,而从国外引进的先进设备对普通农户来说又缺乏经济性,所以,为决我国在玉米生产销售中遇到的需要耗费大量时间去对玉米检测及分级储输销的问题,同时在XXX新技术发展背景下,在本课题的研究与设计中,提出了利用树莓派集成电子设备和open cv图像处理技术为基础,以计算机语言和Matlb仿真语言为链接,在机器视觉检原理和数学回归理论的前人经验上,将其应用到玉米检测分级的时间应用中,力争实现具有经济优势的玉米检测分级系统。

 1.2 研究的目的及意义

我国仍处在并将长期处于社会主义初级阶段且我国仍是世界上农业大国,在巨大的人口基数之下和我国社会矛盾改观的情况下,为了满足人民的美好生活需要,玉米作为主要的粮食作物和畜牧业饲料,其品质检测已然成为了我们应注重的问题。

同时由于玉米果橞的品种繁多,不同果橞具有着不同的特征性状,而传统的检测手法准确度不高,人工参与度大,在面临大批量检测任务时人工分级的方式不足以达到预想中的分级效果。但若以机器视觉代替人工视觉,以运行程序代替人工检测,就可以完美解决粮仓玉米检测分级中的时间与人力问题,且节约了检测预算,达到经济优质迅速的效果。

 1.3 机器视觉技术的特点

机器视觉技术是涉及到多种学科和领域的,其中就包括模式识别、图像处理技术、计算机科学、神经生物学以及人工智能等。这一技术的主要应用思想是能够通过将人的视觉通过模拟的方式让计算机代为执行,在整个过程中就是将相应的信息从存在的客观事物中收集与提取出来,在应用计算机的处理系统将其进行分析,再将分析的结果应用与反馈到需要完成的控制测量或者检测工作中。应用机器识别技术在识别与提取信息时能够具备的最重要的优点有囊括的功能多,可存储的信息量大,运行速度快。

机器视觉系统与人眼对物体的识别相比可以轻易地检测到微小事物的细节特点。在检测过程中检测系统可以不与进行检测的原件进行直接接触。可以避免由于在检测过程中造成的元器件损坏的情况,由此也会节省机械的零部件受到磨损后需要使用的维修成本与时间。由于机械视觉技术的应用可以大大的减少人工在检测与识别过程中的参与度,因此对于存在安全隐患的条件的检测情况时可以避免人员的伤害以及能够实现更为方便的操作。除此之外,在一些零部件不能受到人为污染或者是检测的环境存在一定危险性时,可以由机器视觉代替人工进而能够保证工人的健康与元器件的精密性。

 1.4 粮仓玉米抽样检测分级系统的研究现状

机器视觉应用于在农产品检测方面的研究起步较晚,开始于20世纪90年代初。在早些时期机器视觉作为一种理论概念被引入到中国,但是经过一段漫长的时间此种技术并没有广泛应用到国内自动化用户中去。由于这一劣势造成了国内的机器视觉技术同国外的先进技术相比存在着很大的差距,国内外的差距具体可以体现在对软件与硬件的组态进行集成开发时的实力较差,由技术的劣势带来的开发效率下降与研究成本增长较为明显。

近年来,随着机器人尤其是工业机器人的迅猛发展,带动了机器视觉市场需求的大幅增长。在以制造高端装备为核心的智造工业4.0时代背景下,随着中国制造2025战略的深入,以机器视觉技术为中心的产业市场呈现爆炸式增长势头,该技术开始多方面应用于各个领域,其中对玉米的检测分级便是其广应用的场合之一。

对于粮仓玉米抽样检测分级系统而言,机器视觉技术的应用就像让测量设备“长”了一双眼睛,机器视觉赋予其在进行运算时系统可以得出较为精准的计算结果与更为精确确的处理能力,可以将生物具备的视觉成像能力与大脑处理信息的方式模拟出来,使检测设备可以更加拟人的灵活执行检测任务,同时识别、比对、处理场景,生成执行指令,从而达到迅速精确的检测分级效果。

 第2章 数字图像处理简介

  2.1 数字图像处理简介

2.1.1 数字图像处理的特点

(1)信息量大

由机器视觉技术收集与提取的信息数据是以二维矩阵进行表示和存储在计算机中的数字图像,因此在这个生成的图像中可以包含较多的信息量。例如,某一个存储的实例进行信息量的计算,有一幅在电视上呈现的图像是有512 × 512个像素组成,采用八比特的二进制数对其灰度级进行表示,可以计算出其含有的信息量为:粮仓玉米抽样检测分级系统设计

在对含有如此大的信息量的图像进行处理时,尽管其中蕴含的信息较多,但是若想对其进行处理,必须要求应用到的计算机的内存要很大,而且存储器要求也较高。

(2)数字图像占用的频带较宽

在对语言信息与数字图像信息进行存储时,对于占用的内存要求差别很大,图像信息是比语音信息大出几个数量级的。例如,语音存储占据的带宽大概是4kHz,然而对于电视中的图像存储的带宽应达到大约 5.6MHz 。在开发与应用更为先进的平淡压缩技术后会对图像处理的各个环节,比如显示、处理、存储、传输与成像等,可以将这些过程应用的技术难度降低随之成本也相应的会降低。

数字图像像素间相关性大组成数字图像的每一个像素的灰度并不能独立的成为一个个体,不同的像素的灰度具有很高的相关性,比如电视中呈现的画面,在每一帧画面中两个相邻的像素之间可以达到大于0.9的相关性,对于画面中相邻两个帧的像素间的相关系数会比每一帧之内的相关系数要高很多,由此我们可以将图像信息进行很大程度的压缩。将此技术应用在图像通信领域中时可以加强对图像信息压缩性这一特点的应用,把图像在传输效率上和处理技术上进行提高。

(4)再现性好、适用面宽

为了便于计算机对图像进行处理,因此将数字图像以二维矩阵表示的方法进行计算机存储。在计算机内部完成复制图像与传送图像的命令时数据的完整性就很好地保存了下来,不会因为传输过程中的数据处理过程对数据的真实性产生影响。以上这一点在以往的模拟图像处理技术中进行实现是十分困难的。除此之外,由于图像中包含着来自于多种多样的信息源,在对数字图像进行处理时可能会出现可见光图像或者是不可见的多光谱图像;当实际情况更为复杂时,也可能出现应用电子显微镜呈现出的图像,或者是应用遥感技术出现出现出现图像,甚至还会出现用天文望远镜观测出现。即使需要处理的数字图像的信息源较为复杂,但是在应用了图像数字化技术后,不管任何一种图像都可以由计算机进行处理。

(5)图像信息的视觉效果主观性大、识别困难

在对数字图像进行处理后,一般情况下是用于人的观察或者是评析,在此过程中人的主观因素会对图像的视觉效果产生很大的影响,比如说受众者的情绪变化、视觉感受、兴趣爱好等。在一般情况下,用人工的方式对图像的视觉效果进行评判是相当困难的。例如想要对一副图像上的固定区域内的图像信息进行识别与处理,在此过程中应用计算机进行工作就可以很高效的达到此种目的,而且能够提高识别结果的精确性;但是在将某一区域中的某一个东西的种类应用计算机识别时就很难完成。

(6)图像处理技术综合性强

在对数字图像处理技术进行应用时,可以按各种领域中进行,例如通信技术,电子技术和计算机技术等。数字图像处理技术的重要理论支撑是来自于数学与物理学等的学科及领域。而且在应用数字图像处理技术的过程中必须要牵扯到的技术有:网络、接口、软件和硬件等。综上所述,在对数字图像处理技术进行研究与探索的过程中,需要熟练的应用来自于各个方面的基础性的理论知识,是一个跨越多种学科的具有综合性的技术。

2.1.2 数字图像处理的主要目的与内容

数字图像处理技术的,主要内容是,将多种多样的数字图像应用计算机系统对其进行不同设定情况的处理。在一般情况下应用数字图像处理技术时,主要达到以下三个重要目的:

为了将获取的图像提高可观性,进而能够呈现出所想要的最终结果。比如,为将所要处理的图像的画质进行所需要的处理结果以达到更为清晰的效果,此时应用的方式有:绿波集合变换和灰度变换等;将数据图像信息进行计算机内的编码与数据压缩,以便在传输或存储中能够更好的适应计算机的存储数据量。将图像的基本特征进行提取,用计算机进行对于下一步的图像信息分析。例如,一般将其用于进行不同模式识别的预先处理过程,此时就必须考虑到的问题是特征参数的提取。不管在图像处理之后是想达到哪种目的,计算机系统都必须完成的过程有图像数据的输出、输入与分析加工等过程。由此基本过程可以得到对数字图像处理的研究过程中涉及的主要内容有以下几个方面:

(1)图像的数字化处理:此过程是将一副图像由之前的存在或存储形式转换成数字形式。而且要保证转换之后的图像不会失真,也就是原始的图像呈现的内容没有被损坏掉。在完成图像数字化处理的过程中主要包含三个步骤分别为扫描、采样与量化。前面提到的扫描过程就是将图像按照设定的先后顺序进行访问;采取的样本是离散的图像点,这些图像点是由选取的某一空间上具有连续性分布特点的图像转换而来的;而进行的量化过程是将图样中采集到的灰度值数据转换成相应的具有离散性的整数值。量化的过程是将采样得到的具有模糊性的灰度数值转换为离散分布的整数数值。经过以上介绍的三种步骤之后,其实计算机就会将图像处理成数字化的格式

(2)图像增强处理:采用图像增强的处理方式要实现的目的是将所提供的图像处理结果的提升感观质量。在图像采集的过程中,因为不明原因的图像质量下降,此时可以将获取的像应用图像增强处理技术对画质进行改善。在应用图像增强技术对图像的感官质量进行提升时,并不能够针对特殊的退化而产生的质感下降进行改善,所以在使用这一技术是很难找到特定的最佳方法,所以在进行图像处理前需要对图像的处理进行实验,以及对于分析结果进行误差的分析,进而能够选择出一种更为适当的方式。最终呈现出的图像受众对象是人,此时人的喜好、情绪状态以及心理感受对此时处理结果质量的高与低受到的主观态度的影响是很大的。在进行图像增强处理时有两种经常使用的方法,第一种是边缘增强法,第二种是直方图修正法。在将图像增强技术的总体目标进行总结时,重要的关注点在于将图像进行更为清晰的处理。

(3)将图像复原为原始状态:图像复原的目的与图像增强是很相近的,都是通过一定的技术手段对已有的图像的画质进行处理与完善。作为图像在自然退化中的逆向的处理形式,图像复原法可以对已经退化的图像的退化进程进行评估,通过评估的结果设计出相应的弥补退化的数学模型,通过对图像的退化过程的弥补改善因退化过程造成的图像失真,最终通过此手段得到的图像是与没有经过干扰过程而退化的原始图像或者是通过对原始图像的质量进行估计后得到的最优的原始图像处理结果,通过以上的方式对已经受到干扰而退化的图像提升其画质。

(4)图像分割技术:在将一副待处理的图像依据不同区域的划分过程就是对图像进行分割的过程。在一副图像中往往具有许多不同的对象,比如在对一幅航空拍摄图像进行处理时,可以在图像中划分出的对象分别有湖泊草原工业区和居民区等。在对图像进行分割处理后,可以通过以下三个方面对其的质量好坏进行判断:

第一,分割出的不同区域依据的分割区域的相应特质进行分析,在分割处的每一个区域内部的内容连续的且不存在很多小孔的;第二,在设定分割依据时,要注意临近的两个区域所选取的特征必须存在着较为明显的不同点;第三,分割后的图像要存在着十分确定的边界。不过,当前评估图像分割处理后得到的质量的好与坏的过程中并没有设立其相对统一的原则,所以在应用计算机对所分割的图像进行视觉的分析是十分困难的。

(5)图像分析技术:采用图像分析技术的主要目的是对所要分析的图像中有兴趣的目标内容进行相应的测量与检测,通过此手段可以得到此图像的较为客观的信息,进一步得到对于所处理图像的准确与符合目的表述。对某一些特定的图像进行分析时,有三个步骤需要做到分别为:分类、描述与分割。通过人类的视觉系统在从一副对应的图像中寻找到自身感觉有兴趣的实物或者对应区域是分简单的就以上的过程,对计算机来说,是要将其所采集到的图像信息做出客观的评价,再将图像中的颜色与灰度等作为依据,可以将所评价物体或者区域进行不同的分离,此过程称作分割。在对已经分割后的不同区域或者是物体的不同机构进行评估与性质的判断时,就要采用对应的数学语言进行表达,表达出不同区域之间的对应关系时会产生一种十分简短与准确的表达结果,此过程叫做描述。计算机在对图像完成分割与描述过程后,对接下来的图像分类与内容识别的处理就会很顺利。假如将图像处理的过程描述成将一幅图像转变成与之对应的更为完善的图像,那么图像分析的过程就是要将图像处理成数据形式的结果。上面所提到的数据可以是一种对于检测图像的特征进行描述所得到的结果,或者是通过将图像的信息以符号的表述形式进行呈现,最终可以将所识别的图像的目标与特有的性质进行表达。

(6)对图像内容进行重建:图像重建,最终呈现出的结果是将已有的二维平面图像转变成三维物体图像的过程。此过程与图像增强进行对比可以发现在图像增强过程中输入计算机的内容是图像,而输出的结果同样是图像,在对图像重建的过程输入计算机的内容是某一些数据,而输出的结果是图像。其中作为广泛应用于典型的例子是在医学上使用的计算机对人体进行扫描得到的扫描结果(CT)。此次扫描的过程是对所扫描的物体从各个角度将物体内部的图像投影出来,可以应用的技术有核磁共振、X射线与超声波,最后将扫描后获得的数据通过计算机输出相应的图像。在对整个转标结果进行描述,就是要将人体的某些组织与器官,经过扫描得出许多副具有断层特点的二维平面数据转变成三维结构的图像。当前阶段实现完善与发展科学可视化与虚拟现实技术的目的时,已经将三维重建技术作为重要的发展基础。

(7)图像变换技术:图像变换的过程是采用一种叫数学映射的方法,把图像信息存在着空域转变成时域或者是频域,将完善的图像,结果应用数学手段对其进行检测与评价。在此过程中经常使用到的变换方法有小波变换、离散余弦变换和傅里叶变换等。

(8)图像压缩编码:再将图像作为一类十分关键的信息进行存储时,需要将其设定为某种格式存进计算机中。而存储数字信息时需要占据的数据空间是十分巨大的,在存储器向较大容量发展的今天,由于图像的形式与质量越来越高,比如存在动态图像或者是高分辨率图像,此种存储器并不能对处理过程进行高效率的完善。除此之外,再将图像信息通过不同的设备进行对应的传输任务时,传输过程就必须使用更多的通信资源,由此为了在图像传输过程中能够进一步的减少存储空间的使用量,以及将通信资源进行更为优化的使用,就急需将研究出图像合理压缩的技术。将数据量较大的数据在不进行压缩的状态下进行传输或者是存储时,需要占用的带宽与容量是十分巨大的,同时会进一步提升使用的成本。除此之外,可以进一步的借助人类的某些处理图像时的特点,人为的将图像中存在的视觉多余或者重复的部分进行进一步压缩,通过此种方式可以将传输或存储的图像含有的数据量进行很大程度上的降低。可以将图像编码的过程描述为,应用多种多样的表达方式将图像所占用的空间量进行降低,从根本上来说,为了将图像编码后的代码进一步减少而所表达的数据信息尽可能的增加的情况下,就必须按照一些特定的规则将图像数据中的编码组合或者是转变成为另外一种行之有效的数据。所以说编码的处理过程是由编码来实现的,或者说通过编码的方式可以实现压缩的结果。

 2.2 图像处理技术

2.2.1 图像灰度处理

二值图像说的是图像中仅仅存在着两个图像值,分别为0与255,除了这两个值之外,没有其他的灰度值。将灰度图像进行二值化处理,首先就需要在一个范围内选定出一个阈值T,假如需要处理的图像中含有的某些像素的灰度值比此阈值要小的话,就可以将此像素的灰度值表示为0,反之可以将此图像的灰度值表述为255。同以上对于二值化的图像处理模式进行描述的结果来看,在对阀值 T的选择是十分重要的,可以根据选取的阈值t将图像中的背景与对象进行进一步的划分。在对某一个图像进行二次化处理的过程,可以首先设定原始图像的灰度值的函数为粮仓玉米抽样检测分级系统设计在经过二值化处理后的图像变换后的函数可以表示为粮仓玉米抽样检测分级系统设计最终经过二值化处理后的表达式,可以表示为如下:

粮仓玉米抽样检测分级系统设计

在对阈值的选取进行分类时可以选择以下三种方法分别为动态阈值、局部阈值与全局阈值。以上三种方法中全局阈值法是其中最为简便的方法,此种方法在将灰度图像转化成为二值图像时,是应用灰度直方图中的数值确定出阈值,在对有以下特征的图像进行处理时的呈现结果较为优质:得到的直方图分布呈双峰、目标和背景分离明显的图像。而本次所转化的图像为商标图像,此图像是人工图像中的一种,可以很好地符合以上的条件,因此本文中可以应用全局阈值法对图像结果进行二值化处理。

粮仓玉米抽样检测分级系统设计

2.2.2 玉米图像的去噪处理

在对玉米图像进行处理的过程中,有很多的点可以产生噪声,比如用于获取图像的设备、图像传输过程以及玉米自身与运动,这些过程中是我们在进行图像处理中不得不经历的,所以整个过程中无论怎样处理都会有一些噪声产生。在具体的图像处理中是否要对产生的噪音进行处理的问题,答案这完全取决于噪音的大小对图像是否构成很重要的影响。但是在通常情况下来说,我们对玉米进行识别过程之前都必须对图像生成过程中的噪声进行更好地处理。可以将此过程中产生的噪声进行明确的分类,第一种是加性噪声,第二种是乘性噪声。顾名思义,加性噪声,其中存在的数据关系是与原图像有“加”的过程,具体的函数关系式可以用关系式2.3表示,而行性噪声中的数据就是与原图像中的数据有乘积的关系,,具体的函数关系式可以用关系式2.4表示。粮仓玉米抽样检测分级系统设计

可以将噪声产生的原因归结于在实际产生过程中表现的不同特点。将实际操作中会产生的具体到生进行细分可以分为:伽马噪声、瑞利噪声、指数分布噪声、脉冲噪声、高斯噪声以及均匀分布噪声等。在对噪声进行去除时,我们可以根据细分后的不同道生的特点采用对应的方法进行。在去噪的方式中大体上可以分为两种类型,第一种在时域中进行去噪处理,第二种是在频域中进行去噪处理。你上介绍的两种方法所采用的基本原理是不同的,第一种方法应用的是噪声与所检测到的信号所存在的时域具有不同的特点,第二种方法是,噪声与信号所存在的频域有不同的特点。以上介绍的不管哪一种方法,我们都可以应用此种方法将噪声与所需要的信号进行充分的分离,得到的图像数据中可以确保具有较少的噪声量。应用噪声与信号上存在的时域的不同可以应用的方法有许多,例如滤波法、自适应滤波、顺序滤波与均值滤波等。而应用噪声与信号上在频域上存在的不同,进行去噪的过程中关键应用的是两种内容中所占据的频带是有所差异的,因而可以将两者进行分离,在应用频带进行噪声分离时,我们可以进一步采用两种方法分别为:有带通滤波与低通滤波。

2.2.3 玉米图像的长宽提取

将某一副图像中的对象进行区域划分之后,不同的区域竟然会存在着一定的边缘,边缘的特征有:颜色值不连续、颜色值变化较大以及灰度的结果。人的视觉特点是在对某一个场景中所存在着的不同物体的边缘相交接处能够很快的将其区分出来,由此可以将整个区域内存在的每一种物体的大概轮廓进行区分,首先确定初选定区域的边界是进行边界分割方法中的首要基础,在封闭边界内所具有的像素构成了对应的区域。将图像中所有的像素归类于这个区域的边界点上,可以应用的是边缘检测算子,此种方法可以将图像中所有的像素和每一个像素的中所对应的直接领域状态进行检测。在对边缘进行检测时,也可以应用链接追踪方法,这种方法可以将选定的区域内的边界进行准确地确定,这种方法的原理是在图像的不同区域内的边界上可以得到相应的高梯度值。

但施行边缘检测时通常要进行以下三个步骤:第一步,为将图像中存在的某些可能的边缘点检测出来需要采用算子检测;第二步,在对边缘存在一定厚度的过程进行检测时,可以首先细化这种较为复杂的边缘,然后将其厚度按照像素的单位进行细化;第三步,为得出封闭性的边缘可以采用边缘闭合技术。

在对图像边缘进行检测的时,主要使用的方法有以下几个类型:基于局部图像函数的方法、基于边界曲线拟合的方法、多分辨率方法、多尺度方法、图像滤波方法以及基于局部图像函数的方法。在整个过程中可以将图像的灰度值转换成高度值进行计算,可以将一个小窗口内的数值应用一个曲面结构来进行拟合,在依据曲面的特点确定出图像灰度值的边缘点。在对图像进行滤波处理过程中,采用的方法是将其中的滤波算子与图像的内容结合起来应用卷积运算进行处理。此过程中被广泛应用的是微分算子,此种方法是将图像内容求出一个一阶导数的极大值以及用二阶导数存在的零点去决定图像的边缘,其中应用的典型实例有canny滤波器。 在应用多尺度滤波时,本质上是将图像应用多种尺度的滤波算子进行卷积处理,进而可以考察由此种方法寻找出的边缘点,依照尺度的变化引起的边缘变化因此具有的独有的特点,通过将不同尺度下采集的多种多样的信息进行结合可以将边缘点进行确定。采用多分辨率的方法本质上是将初始图像中的分辨率采用或者规则或者不规则的方法进行逐渐的减少,由此可以得到一个像金字塔形式的图像序列,并且要在此基础上将图像进一步进行分割。应用此种方法根本上的着力点是应用体积相对大的实物,能够存储在一个分辨率较低的状态下,而噪声并不能做到以上这一点。可以采用边界曲线拟合的方法将实际的数据以某一个解析函数进行数据的逼近,但对图像的边缘数据应用建立模型的方式进行处理时,可以将实际存在的边缘函数与模型中设定出的理想边缘曲线做出拟合用以确定真正的边缘位置,要想应用此种办法解决边缘选择的难题最大的难点是要将符合实际状况的数学模型进行合理的选择与充分的建立。

可以将某一个图像内存在着亮度的局部区域且变化较为显著的部分,称之为图像边缘,将这个区域内的温度剖面图进行分析,可以发现整个的趋势呈现出一个的阶跃状态,整体的灰度值变化就是从一个缓冲区域较小的情况以最快的速度转变到另外一个灰度值中灰度相差较大的情况。在每个图像的边缘部分实际上是将图片中的大部分信息集中于此,在将图像边缘进行最终的确定与信息的提取是关系到更好的识别和理解整个的图象场景十分关键的,与此同时,此过程中所截取到的关键特点同样也可以应用于图像分割过程中,在进行边缘检测的任务时,首要的几个任务是将图像的灰度变化程度进行定位、检测与度量,边缘检测方法是在1959年真正设想与探索出来的,在经历了50多个年头的不断升级与开发之后,已经研发出了许多种类的检测方法。笔者通过将已有的边缘检测方法中的文献进行收集详细阅读与总结以及将编程的内容进行调试过后,通过本次的论文内容详细的描述了边缘检测的具体原理,在整个工作任务中详细的阐述了Canny检测算法的实现过程。

为了将图像的边缘进行检测,需要采用到的方式是将离散化梯度对函数进行数值方面的逼近,可以应用二维灰度矩阵梯度向将图像灰度矩阵存在的灰度越变的位置找出来,之后能够在已有的位置点中将此联系起来,就可以得到图像中所能呈现出的图像边缘,这里所提到的“图像边缘”是一个统称,其中可以包含的二维图像上的基元图特点有纹理、角点与边缘等。

但实际的应用状况中,较少都使用到线条边缘图像及其理想的灰度阶跃,而且现实中应用的传感器件有很大一部分是存在着低滤波的特征的,这种特性会将阶跃边缘转换成斜坡性边缘,此过程中的强度变化并不是在一瞬间完成的,而是在相当的距离内实现了跨越,因此在进行边缘检测时,第一个要完成的任务是滤波。

(1)滤波

在应用边缘检测算法对图像强度进行区分时,主要是将其应用一阶与二阶导数进行表述,不过其中的导数会对噪声的波动十分的敏锐,因此,在此过程中必须应用滤波器对能够产生噪音的相关的边缘检测器的性能进行进一步完善。通常采用的滤波方法是高斯滤波法,也就是应用具有离散化的高斯函数,表示出一组能够实现归一化的高斯核,之后将图像灰度矩阵应用高数和函数把其中的每一点都用加权求和的方式进行计算。

(2)增强

能够将图像在各个点的邻域值的强度的变化值进行表述的基础条件是对图像增强边缘,使用增强算法是可以进一步的将某些具有一些明显变化的点着重表示出来,这些点存的特点是图像中灰度点表述的邻域强度值。将计算好的梯度幅值进行明确的表述,可以采用编程的方法进行呈现。

(3)检测

但我们对图像进行增强处理之后,在相应的邻域内有大量个数值点存在着较大的梯度值,而这些数量较多的点并不都是我们要寻找的边缘点,在实际的应用中需要对这些点应用一些方法进行取舍,而阈值化方法是应用中来检测这些点的经常用到的方式。

 第3章 粮仓玉米抽样检测分级系统设计

  3.1 粮仓玉米存储及检测地点说明

本设计主要解决了大型粮仓的某1~2个小型仓室中完整玉米果橞的抽样检测分级问题。

 3.2 粮仓玉米抽样检测分级系统的硬件组成

玉米抽样检测分级系统的组成包含软件系统与硬件系统,其中的硬件系统为图像采集系统, 由光源支架, 摄像头,光源,图像采集卡,托盘和计算机组成

3.2.1 摄像头

在进行拍照时拍照时为进行接下来的图像处理任务,必须要选取能够拍摄出的照片具有较高的分辨率的摄像机。在当前的视觉系统应用中一种名叫Charge Coupled Device的摄像机以下简称为CCD,因为有以下几个优点,所以广受欢迎,分别为拍摄照片的清晰度高,使用过程性能较为可靠以及占据的体积较小等的特点。CCD摄像机可以按照其采集图像的方式与信息量成为两类分别是面阵和线阵,线阵CCD摄像机在采集图像的过程中,一次仅能收集到一行的信息量,然而面阵CCD摄像,在分析图像的过程中,可以将一整幅的图像进行一次的信息提取,这样可以进一步的将图像的信息进行收集与分析的速度提升。因此,在本次系统设计中选取的摄像机是面阵CCD 摄像机,此摄像机是由德国生产的型号是Basler A101fc,可以输出和分辨彩色的图像,这台CCD摄像机的分辨率可以达到1030(垂直)×1300(水平)像素,在光线微弱的情况下也能够感应到光源,在工作过程中产生的噪音较小,在对镜头焦距进行选择时选取的长度为 16mm,,在相机的信息输出端连接的是 IEEE 1394a 图像采集卡。

3.2.2 计算机

对玉米的质量进行检测的实验中为能够保证实验结果的准确性,因此在选择计算机的时候要有一定的要求,在选择的过程中最后要确定出的计算机的硬件配置,具体内容的介绍如下:在计算机的处理中的核心即CPU选择型号结果为Pentium-4 Dell TM 8400,显示卡的型号为128 M—PCI,硬盘的内存应当达到512M,且计算机的主频应当设定为2.50 GHz 。

3.2.3 光源

在对机器视觉系统进行设计时,如何对照明应用的方案进行设计以及选择到试用的光源是可以决定整个系统能否运行的首要内容。而且在本次实验中必须达到的要求是,、在光源进行漫反射时必须是均匀的存在于光照箱内,而且不能在整个箱体内有任何的阴影,总体上要达到的目的是要将图像原本的颜色进行充分的提取。对各种类型的灯的性能进行调查时发现,卤钨灯应用的灯芯是钨丝,而且在电流在钨丝内时会使其发生卤钨循环,此反应可以将钨丝在点燃后的蒸发量减小,钨丝的损耗度就会减小,相应的灯的使用寿命会变长,而且灯所占据的体积较小,所发出的光的颜色和白炽灯是一样的,能够将收集到的图像的各种颜色进行更好地还原,且产生的光的效果能够达到白炽灯的1~2倍,寿命上也会相应的高出白炽灯一倍之多,使用寿命可以达到2000小时,基于以上几个卤钨灯的优点,因此本设计中选用的灯就是此灯,还将150W\100W以及60W的白帜灯和50W、35W的卤钨灯的对比试验后的结果显示,35W卤钨灯是可以适用于本次系统设计中的光源条件的并且应用了4个卤钨灯。

3.2.4 背景

在对实验中的光照箱载物台的背景颜色进行选取时,必须达到的要求是能够在实验中明显的区分出玉米这一物体来,选取好的背景颜色是能够为接下来的玉米品质检测提供更好的前提条件,在实验中想要得到更为清晰且存在很高的对比度的图像时在选取背景这一工作中就显得十分关键。在选取背景的过程中采取了对照实验法,将选取出来的预估的颜色做出不同的实验并通过对比得出的图像与灰度直方图进行最终的确定,最后由实验发现当背景选为黑色时,灰度直方图中呈现出了双峰状,此状态是能够将玉米的特点进行充分提取的关键,由此可以确定出背景色为黑色时可以更全面的显示出玉米外围边距的特征。

3.2.5 硬件电路图

硬件电路图如图3.1所示

粮仓玉米抽样检测分级系统设计

图3.1

  3.3 软件系统的设计

3.3.1 OpenCV介绍

在设计中应用的是视觉开源库的简称是Opencv,其全称为Open Source Computer Vision Library。上面提到的,Opencv是一个存储数据的库,在进行编程时使用的语言是C++,与此同时在设计时也能够使用其他的平台,比如Python和Java,此种Opencv库是能够在应用计算机视觉领域的内容进行使用,与此同时也可以让用户对其中的信息进行免费的访问,使用者可以将其源代码调出来,而且也能够实现依照自己的使用需求进行转换的过程。

计算机视觉处理的技术主要有三个层次,分别为高层,中层与底层图像处理,在这个领域中的许多掌握先进计算机视觉技术的开发者们已经将此功能得到了进一步的开发与应用,在将计算机视觉技术进行推广与应用到各个相关的领域中时,Opencv已经通过不断的开发得到实现,而且对于其能应用到的各个领域与研究的方向都已经涉及到。尤其是当前的研究已经将开发出的算法与当前的计算机视觉研究技术的顶尖相跟随,并且已经把新开发出的各种技术算法也应用在这些领域中。

由于OpenCV具有非常多的功能,因此其在工业界与学术界中的应用也越来越广泛。在进行图像处理的研究领域中miclab也是应用最多的软件之一,也是在进行数值计算的领域内相对应用较多的软件。在以往开发者应用Opencv时都是应用Matlab代码进行编程,但是由于升级版的Opencv2.x可以直接应用更为简单与易于理解与操作的C++语言进行编程,因此在计算机图像处理领域中的开发与设计者们发表的论文中可以将代码直接应用C++编程语言进行编辑。将Opencv(C++)与Matlab进行对比,可以得到的优点有:(1)在一般情况下,应用C++编程系统可以提升效率;(2)在应用C++进行开发时,相对Matlab中应用的语言来说就已经掌握了一种在以后的工作中具有更高的适用性的语言。在一些专门对图像进行处理与研究的公司就要求去应聘的工作者,能够对达到十分熟练以至于更为精通的操作与应用Opencv。通过此要求也可以看出,Opencv在对一些图像进行处理时是必不可少的一个工具,也是在此计算机图像处理研究领域的工作者们强力推荐的一个软件。

有很多不同的软件组合在一起进而组成了Opencv,而且在设计的过程中已经将每一个模块对应的不同功能进行了明确与完善。笔者在这一部分内容中对其设计的几个关键的模块进行简述。在使用提供的基本操作手册时,我们可查询到上面介绍的以下几个关键模块:

第一个,core. The Core Functionality。此模块主要是可以对Opencv内部的数据结构进行设计,Mat作为其中的重要基础,是可以应用它对系统中的矩阵或者图像进行存储,完成此种功能的其他内容还有:Size是用于表征的长与宽构成的结构,Point是可以构成相应的点结构,还有一些相关的其他内容。在Opencv内部的Mat中将大量的矩阵运行方法进行了组合与应用,这个过程是可以对矩阵进行相应的计算,而且使用的是Mat里面的类。

第二个,imgproc. Image Processing。此模块的功能是对数据到的图像进行相应的分析,主要的内容是对玉米的特征进行检测,输出直方图和滤波图等。

第三个,highgui. High-level GUI and Media I/O。此模块的功能是构建出Opencv的简洁的界面,面可以创建出不同的窗口,对处理好的数据进行输出,以及,读取输入进系统的数据。

第四个,video. Video Analysis。此模块可以将输入进系统的视频进行分析,主要分析的内容有物体跟踪与运动分析。

第五点,calib3d. Camera Calibration and 3D Reconstruction。此模块主要完成的功能有三维重建与相机矫正。

第六点,ml. Machine Learning。此模块是在Opencv内部进行机器自我学习的模块,可以学习到的内容有:随机森林、boosting以及统计学习模型等的大量的可供计算机学医的算法。

第七点,contrib. Contributed/Experimental Stuff。此模块的功能主要是对输入的模型与数据进行实验,这种功能是较为前段的开发功能,所以总体来看并不能完全达到运行的要求,不过技术上可以完成人脸识别和立体视觉等的较为强大的功能。

3.3.2 树莓派微型电脑的应用

RaspberryPi(中文名为“树莓派”,它的缩写是RPi,这个种类的微型电脑是为学者进行计算机编程学习而设计的,而且值得一提的是此电脑的大小仅有信用卡那么大,此电脑应用的系统是Linux。这个微型电脑的主板是应用了技术ARM进行设计的,其中的内存硬盘使用的是SD/MicroSD,在整个类似于卡片的主板上共设计了USB接口的个数为1/2/4个,以太网接口采用的是10/100 ,这款微型电脑在设计A型时没有加入网口,这些接口可以将网线、鼠标与键盘进行连接,同时具有可以输出HDMI高清视频的接口以及可以输出视频模拟信号的电视的接口,以上所有的信息输出接口都是集成于一张与信用卡相比大一点的主板上,此微型电脑具有的基本功能与PC是相同的。可作为粮仓玉米分级检测分级系统的载体。

 第4章 实验处理和数据分析

  4.1 图像信息处理的目的

在对玉米的品质进行筛选与分级时,为了对其品质做出准确的判断需要将获取到的图像信息进行进一步的完善与处理。在实验设计的系统中得到的两个检测结果有两个,一个是破损综合无损检测,另一个是新鲜度综合无损检测,要想得到这两种检测的结果都必须通过获取到的图像进行信息处理来获取最终的结果,这两种检测结果在图像处理上存在着很大的差异,在对玉米的外形大小进行判定与分类时,需要更加精确地获取玉米的外形信息,依照需要获取的图像信息结果经过对各种检测方法进行判断之后,设计出了在玉米品质分级的任务的具体步骤以及需要经过的流程,玉米的综合长宽检测中的图像处理流程如图4.1所示。

粮仓玉米抽样检测分级系统设计

图4.1 破损检测图像处理流程图

 4.2 图像处理与数据分析的实现过程

4.2.1 按钮调试及图片大小位置控制

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file ‘mainwindow.ui’

#

# Created by: PyQt5 UI code generator 5.6

#

# 这个都是界面设置界面每个按钮和图片的大小及位置

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):

def setupUi(self, MainWindow):

MainWindow.setObjectName(“MainWindow”)

MainWindow.resize(700, 521)

self.centralWidget = QtWidgets.QWidget(MainWindow)

self.centralWidget.setObjectName(“centralWidget”)

self.graphicsView = QtWidgets.QGraphicsView(self.centralWidget)

self.pushButton = QtWidgets.QPushButton(self.centralWidget)

self.pushButton.setGeometry(QtCore.QRect(70, 390, 131, 61))

self.pushButton.setObjectName(“pushButton”)

self.pushButton_3 = QtWidgets.QPushButton(self.centralWidget)

self.pushButton_3.setGeometry(QtCore.QRect(430, 390, 131, 61))

self.pushButton_3.setObjectName(“pushButton_3”)

self.pushButton_2 = QtWidgets.QPushButton(self.centralWidget)

self.pushButton_2.setEnabled(True)

self.pushButton_2.setGeometry(QtCore.QRect(250, 390, 131, 61))

self.pushButton_2.setCheckable(False)

self.pushButton_2.setObjectName(“pushButton_2”)

self.checkBox = QtWidgets.QCheckBox(self.centralWidget)

self.checkBox.setGeometry(QtCore.QRect(550, 20, 101, 31))

# self.checkBox.setChecked(True)

self.checkBox.setObjectName(“checkBox”)

self.label = QtWidgets.QLabel(self.centralWidget)

self.label.setGeometry(QtCore.QRect(140, 340, 101, 31))

self.label.setObjectName(“label”)

self.lcdNumber = QtWidgets.QLCDNumber(self.centralWidget)

self.lcdNumber.setGeometry(QtCore.QRect(550, 110, 131, 41))

self.lcdNumber.setProperty(“intValue”, 0)

self.lcdNumber.setObjectName(“lcdNumber”)

self.lcdNumber_2 = QtWidgets.QLCDNumber(self.centralWidget)

self.lcdNumber_2.setGeometry(QtCore.QRect(550, 160, 131, 41))

self.lcdNumber_2.setObjectName(“lcdNumber_2”)

self.label_2 = QtWidgets.QLabel(self.centralWidget)

self.label_2.setGeometry(QtCore.QRect(510, 110, 31, 31))

self.label_2.setObjectName(“label_2”)

self.label_3 = QtWidgets.QLabel(self.centralWidget)

self.label_3.setGeometry(QtCore.QRect(510, 160, 31, 31))

self.spinBox = QtWidgets.QSpinBox(self.centralWidget)

self.spinBox.setGeometry(QtCore.QRect(590, 250, 91, 41))

self.spinBox.setReadOnly(False)

self.spinBox.setObjectName(“spinBox”)

self.label_5 = QtWidgets.QLabel(self.centralWidget)

self.label_5.setGeometry(QtCore.QRect(510, 260, 81, 21))

self.label_5.setObjectName(“label_5”)

self.label_6 = QtWidgets.QLabel(self.centralWidget)

self.label_6.setGeometry(QtCore.QRect(680, 250, 61, 41))

self.label_6.setObjectName(“label_6”)

self.label_7 = QtWidgets.QLabel(self.centralWidget)

self.label_7.setGeometry(QtCore.QRect(510, 60, 141, 31))

self.label_7.setObjectName(“label_7”)

self.retranslateUi(MainWindow)

QtCore.QMetaObject.connectSlotsByName(MainWindow)

def retranslateUi(self, MainWindow):

_translate = QtCore.QCoreApplication.translate

MainWindow.setWindowTitle(_translate(“MainWindow”, “MainWindow”))

self.pushButton.setText(_translate(“MainWindow”, “打开摄像头”))

self.pushButton_2.setText(_translate(“MainWindow”, “拍照并识别”))

self.pushButton_3.setText(_translate(“MainWindow”, “重新采集标准”))

self.checkBox.setText(_translate(“MainWindow”, “采集标准”))

self.label.setText(_translate(“MainWindow”, “本次识别结果:”))

self.label_2.setText(_translate(“MainWindow”, “宽:”))

self.label_3.setText(_translate(“MainWindow”, “长:”))

self.label_4.setText(_translate(“MainWindow”, “还没识别”))

self.label_5.setText(_translate(“MainWindow”, “允许误差:”))

self.label_6.setText(_translate(“MainWindow”, “%”))

self.label_7.setText(_translate(“MainWindow”, “标准大小:”))

4.2.2 图像特征值参数的提取与比对

(1)具体操作步骤:

1)拍摄、灰度化

2)对灰度图均值滤波,降低噪声

3)对滤波后的灰度图使用canny算子进行边缘检测

4)对检测结果进行膨胀使玉米区域连城整体

5)对膨胀结果腐蚀,让区域边缘和实际结果趋于一致

6)在原图用绿色掩膜标记玉米

7)对玉米区域使用canny算子,提取整个玉米的轮廓

8)在原图将玉米轮廓的最小外接矩形标记出来,并提取外接矩形的长宽,显示出来

import cv2

import numpy as np

from PIL import Image

# 识别玉米的代码都在这里

def getImageWithRect(cv_image):

#转为灰度图

img_gray = cv2.cvtColor(cv_image,cv2.COLOR_RGB2GRAY)

x, y = img_gray.shape[0:2]

#原图太大了,缩小为原来的1/2

img_gray = cv2.resize(img_gray,(int(y/2),int(x/2)))

img_resized = cv2.resize(cv_image,(int(y/2),int(x/2)))

# res = cv2.addWeighted(img,1,res,0.7,0)

#均值滤波,去除噪声

img_gray = cv2.medianBlur(img_gray, 3)

#写入图像

cv2.imwrite(‘gray.jpg’, img_gray)

#canny 算子监测边缘

edges = cv2.Canny(img_gray, 120, 250)

cv2.imwrite(‘edges.jpg’,edges)

# cv2.imshow(’77’,edges)

#进行膨胀

dilate = cv2.dilate(edges, None, iterations=15)

# cv2.imshow(‘787’,dilate)

cv2.imwrite(‘dilate.jpg’, dilate)

#进行腐蚀

erode = cv2.erode(dilate, None, iterations=10)

cv2.imwrite(‘erode.jpg’, erode)

# cv2.imshow(‘797’,erode)

#获取大小

shape = img_gray.shape

# 创建一个新的图像,全是绿色

res = Image.new(“RGB”, (shape[1], shape[0]), (0, 255, 0)) # (0,255,0)绿色,创建全是绿色的图片

res = cv2.cvtColor(np.asarray(res), cv2.COLOR_RGB2BGR)

#对图像进行运算,获取玉米区域

res = cv2.bitwise_and(res, res, mask=erode)

cv2.imwrite(‘greenmask.jpg’,res)

# cv2.imshow(‘123’,res)

#在原图叠加绿色

res = cv2.addWeighted(img_resized,1,res,0.7,0)#在原图中叠加

cv2.imwrite(‘final.jpg’,res)

# cv2.imwrite(‘final2.jpg’,edges)

# cv2.imwrite(‘final3.jpg’,res)

#canny算子获取边缘

final_edges = cv2.Canny(erode, 120, 250)

cv2.imwrite(‘final_edges.jpg’,final_edges)

#检测到边缘

contours, hierarchy = cv2.findContours(final_edges, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)

for c in contours:

# 找到边界坐标

x, y, w, h = cv2.boundingRect(c) # 计算点集最外面的矩形边界

cv2.rectangle(img_resized, (x, y), (x+w, y+h), (0, 255, 0), 2)

cv2.putText(img_resized, ‘w:’+str(w)+’h:’+str(h), (int(x), int(y)),

cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 0, 0), 2)

cv2.imwrite(‘result.jpg’,img_resized)

return h,w,img_resized #返回所需要的参数

调试过程图片展示调试过程图片如图4.2所示

粮仓玉米抽样检测分级系统设计

4.3 实验结果展示

如图4.3;图4.4所示,本设计可以基本检测出玉米照片中玉米的长宽,并可根据长宽的尺度范围与标准值进行对比,于源程序中设置误差值,从而实现宽误差范围的玉米果橞自动检测分级。

粮仓玉米抽样检测分级系统设计

在源程序中设计误差值为一级30%,二级50%,不合格为误差大于50%以上,对如图4.5中的玉米进行检测,输出结果为not good。

粮仓玉米抽样检测分级系统设计

图 4.5

第5章 总结与展望

由于本研究目标和背景图像简单,对象物的灰度分布有规律,且图像直方图具有明显的双峰性,因此宜于采取直方图法确定分割阈值。实验研究表明,悬着波峰间低谷处所对应的灰度值为阈值时,即可将目标和背景进行较好的分离。

二值图像质量分布的是均匀的,因此质心和形心重合。本研究通过对质心点求出形心点。假设图像中物体对应的像素位置坐标,则可用下式计算每个玉米的形心位置。对二值图像而言,若用1表示物体,用0表示背景,则图像面积即为灰度值的个数。本研究图像有多个连通区域,要计算每个联通区域的面积可通过对每个具有相同标号的像素点进行累加来获得。

最终设计出来的玉米品质检测系统的界面十分的精炼,对系统进行操作的工作人员是很容易对其进行操作的且不需要有太高的技术水平,,在后期的开发之中也有很大的优势,在应用此系统进行检测时可以很方便地对其进行操作。本系统的设计将在整个任务的完成过程中难度设定到最低,可以对玉米大小综合检测自动分级,并且能够很容易地在本软件系统的基础上增加相应性状的模块或者进行些许改进。

本次设计检测系统时以及未来的应用此系统的过程中的主要硬件环境适应用于PC机,对采集到具体的图像信号进行处理时使用的是软件,此系统的性能在软件在处理信息时会大大的影响到处理结果的精确性以及处理的速度,会进一步对处理玉米的分级筛选过程中的效率产生负面影响,因此在使用本系统的过程中,最好是应用专门用于处理数字信号的处理器,简称为DSP,将相应的信息图像获取的信号进行处理,能够保证在信号处理过程中的速度。

 致谢

本次的毕业设计内容是由导师指导我完成的,在整个论文的完成过程中对我在研究问题与学习方法方面有了更加深刻认识。导师的专业知识面很宽广在相应的研究领域中的钻研较为深刻,这些都会耳濡目染的对我产生重要的影响。导师不仅在我研究课题的论文方面有帮助之外,更多的帮助我养成了严于律己的态度与认真踏实的态度对待学习与工作中的任务与问题的习惯,导师的平易近人的性格与高尚的师德使得我同老师在研究相关的课题问题时能够让我感觉到与导师的沟通很通畅。在本次的研究问题中我逐渐养成了独立思考问题与提出自己的见解与解决方法的能力,同时也让我明白了一些为人处世的道理,在贯穿于整个毕业论文完成的过程中导师倾注了很大的精力与心血,给我很多的启发。在此我向我的导师以及在大学四年间给予我帮助的老师们表示我诚挚的感谢,谢谢您!

在我最好的青春四年中,我在母校挥洒过汗水,结交过很多的朋友,长了见识,获得了很多展现自己的机会,并且我在理解与表达方面获得的收获颇丰。在四年的时间里我能很大力的提升少不了优秀的老师与真诚的朋友相伴。感谢在大学四年中给予我帮助的同窗好友,感谢这些朋友在我大学四年中给予我的鼓励与关心,同时感恩我的父母家人在我求学道路上的辛苦付出,没有你们的关心与鼓励就没有我现在的收获,在此感谢你们。

参考文献

[1]陈兵旗,吴召恒,李红业等机器视觉技术的农业应用研究进展[J]科技导报,2018,36(11):54-65.

[2]安爱琴,余泽通,王宏强.基于机器视觉的苹果大小自动分级方法.农机化研究,2008,4:163-166

[3]陈坤杰,尹文庆.机器视觉技术在分析牛肉颜色变化特征中的应用.食品科学,2008,9:92

[4]沈明霞,张瑞合,姬长英.农作物边缘提取方法研究[J]农业机械学报,2000,31(6):49-51

[5] Xu L, Oja E, Kultanen P. Randomized Hough transform ( RHT) : basic mechanisms, algorihns, and computationalcomplexities[J]. Comput Vision Graphics Image Process: Image Understanding, 1993 ,57(2):131-154.

[6]Teh-Chuan Chen, Kuo-Liang Chung. An efficient randomized algorithm for detecting circles[ J]. Computer Vision and ImageUnderstanding, 2001 ,83(2):172-190.

[7]盛明伟,唐松奇,万磊等二维图像拼接技术研究综述[J]导航与控制,2019, 18(1):27-34.

[8] 李伟,任娜娜,胡艳侠,等.基于机器视觉和LabVIEW的指针式仪表自动检测系统设计[J].自动化与仪器仪表,2015, 4(25);178-181

[9]王字吴智恒,邓志文等基于机器视觉的金属零件表面缺陷检测系统[J]机械工程与自动化,2018(4):210-211.

[10]刘绍刚,吴守一,高梁闰.农业产品的光特性无损检测[J].江苏工学院学报,1991,35(5) :122 -124.

[11]周佳璐,基于机器视觉的小麦质量判别系统的研究[D].上海:同济大学,2006.

粮仓玉米抽样检测分级系统设计

粮仓玉米抽样检测分级系统设计

价格 ¥9.90 发布时间 2023年4月29日
已付费?登录刷新
下载提示:

1、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“文章版权申述”(推荐),也可以打举报电话:18735597641(电话支持时间:9:00-18:30)。

2、网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。

3、本站所有内容均由合作方或网友投稿,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务。

原创文章,作者:1158,如若转载,请注明出处:https://www.447766.cn/chachong/132910.html,

Like (0)
1158的头像1158编辑
Previous 2023年4月29日
Next 2023年4月29日

相关推荐

My title page contents