CN113111830A - 一种葡萄藤冬剪点检测算法 - Google Patents
一种葡萄藤冬剪点检测算法 Download PDFInfo
- Publication number
- CN113111830A CN113111830A CN202110441404.4A CN202110441404A CN113111830A CN 113111830 A CN113111830 A CN 113111830A CN 202110441404 A CN202110441404 A CN 202110441404A CN 113111830 A CN113111830 A CN 113111830A
- Authority
- CN
- China
- Prior art keywords
- grape vine
- image
- branch
- branches
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/188—Vegetation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Image Analysis (AREA)
Abstract
一种葡萄藤冬剪点检测算法,属于目标检测技术领域。它包括如下步骤:步骤一、分割葡萄藤区域;步骤二、葡萄藤区域细化与向量化;步骤三、葡萄藤连接关系重建;步骤四、找到需剪枝的葡萄藤枝干;步骤五、检测芽点并确定剪枝点。本发明采用SLIC超像素方法分割葡萄藤图像中的葡萄藤区域和背景区域,将单一像素点聚集为像素块大大加快了分割的速度;采用颜色信息特征及纹理信息特征作为分割依据来训练BPNN分类器,提高了分割的准确度;采用细化算法,减少了细化时间,提高了细化精度,减少了冗余像素点,实现了细化结果的单像素化;本发明将细化后的葡萄藤骨架进行枝干连接关系重建,有效避免了对其他不需要剪枝的葡萄藤枝干的冗余检测,提高了效率。
Description
技术领域
本发明属于目标检测技术领域,具体涉及一种在图像中识别出葡萄藤冬剪点的目标检测方法。
背景技术
葡萄冬剪是葡萄生长管理中重要的一环,对于葡萄的产量具有极大的影响。葡萄冬剪的作用有:1.优生优育。经过了一年的生长后,每一棵葡萄有十几根枝条,每一根葡萄的枝条都有1米多长,上面十几个芽,来年春天所有的芽同时萌发会造成养分不集中,树势难免弱下来。冬剪就是减少花芽数量,去掉瘪芽,废芽,把最好的花芽留到来年春天。2.更新换代。老枝条反复冬剪,每年多留一小节难免会越长越长,所以需要回缩和更新,冬剪就是去掉离根系远的枝条,尽量留下离根系近的枝条。必要的时候要从靠近根部的位置预留更新枝。3.调节葡萄与环境的关系。冬剪可以改善葡萄枝条的合理分布,充分有效地利用空间和光能,改善通风和透光条件,同时可以调节葡萄与温度、土壤、水分等环境因素的关系,有利于葡萄的生长发育。4.减少越冬病虫害。病虫害发生的地方控制合理修剪可改善通风和透光条件,有利于农药喷洒、夏季修剪、除草松土等,达到防治葡萄病虫害的目的。
目前,葡萄园的冬剪仍然需要人工进行修剪。近年来由于农业劳动力逐步向城市工厂转移,新生代劳动力大多不愿意从事农业生产工作,导致农业人工成本不断攀升,并且可以预计随后的几年内这样的上升趋势不会减缓;甚至在部分劳动力稀缺的地区,在用工季节还会遇到雇工难的问题。因此,伴随着农业自动化技术的快速发展,越来越多的葡萄种植领域从业者开始寻求一种能够实现葡萄园自动化冬剪的方法。本发明涉及一种在图像中识别出葡萄藤冬剪点的目标检测方法属于机器视觉技术,是实现自动化冬剪的关键核心技术之一。
超像素概念是2003年Xiaofeng Ren提出和发展起来的图像分割技术,是指具有相似纹理、颜色、亮度等特征的相邻像素构成的有一定视觉意义的不规则像素块。它利用像素之间特征的相似性将像素分组,用少量的超像素代替大量的像素来表达图片特征,很大程度上降低了图像后处理的复杂度,所以通常作为分割算法的预处理步骤。已经广泛用于图像分割、姿势估计、目标跟踪、目标识别等计算机视觉应用。
SLIC(simple linear iterativeclustering),即简单的线性迭代聚类,是2010年提出的一种思想简单、实现方便的超像素算法,将彩色图像转化为 CIELAB颜色空间和XY坐标下的5维特征向量,然后对5维特征向量构造距离度量标准,对图像像素进行局部聚类的过程。SLIC算法能生成紧凑、近似均匀的超像素,在运算速度,物体轮廓保持、超像素形状方面具有较高的综合评价,比较符合人们期望的分割效果。SLIC超像素分割方法具有邻域特征比较容易表达、可以兼容分割彩色图和灰度图、设置参数少、运行速度快、生成超像素紧凑度好、轮廓保持性好等优点。
BPNN(Back Propagation Neural Network)是最基础的神经网络,其输出结果采用前向传播,误差采用反向传播方式进行。其网络结构由输入层、单层隐藏层和输出层共三层神经网络结构构成,输入层接收数据,输出层输出数据,前一层神经元连接到下一层神经元,收集上一层神经元传递来的信息,经过“激活”把值传递给下一层。本发明将从SLIC处理后的图片中,按照像素块为单位提取的特征信息作为输入,输入到BPNN中训练分类器,判断每一个像素块是否属于葡萄藤区域。
IEPTA(Improved Enhanced Parallel Thinning Algorithm)细化算法是赵丹丹、王华彬等人提出的EPTA细化算法的改进算法。该算法基于EPTA 算法去冗余的思想,通过增加判决条件并设计消除模板,达到快速去除冗余像素的目的;增加了两个对称的映像子迭代过程,不仅增加了单次迭代去除的像素数量,减少迭代次数,而且从多方向去除像素,使得获得的细化结果更加接近中心线。该算法是快速并行细化算法,有着细化速度快、无分叉、无像素冗余、局部信息保持较好等优点。
深度学习是近年来机器学习中最具有代表性的技术,在图片识别,自然语言处理,语音识别,机器人技术等许多模式识别的关键领域均取得了突破性的成就。深度卷积网络将图像识别的准确率提高了一个台阶,并在个别领域,如人脸识别中取得了超过人类的识别水平。深度学习的本质是大数据支持下的多层人工神经网络系统,一个深度学习模型通常包含数以百万计甚至千万计的参数和十几层甚至几十层的网络。巨量的参数带来性能提升的同时,也带来网络体量巨大、运算缓慢等缺点,不利于深度学习模型向运算资源有限的设备和应用中嵌入。为了能够将神经网络模型应用在嵌入式设备、手机等运算资源有限的环境下,轻量级神经网络就应运而生。
轻量级神经网络,是指需要参数数量较少和计算代价较小的神经网络模型。由于轻量级神经网络计算开销小,轻量级神经网络模型可以部署在计算资源有限的设备上,如智能手机、平板电脑或其他嵌入式设备。构建轻量级神经网络一般从网络结构优化和网络裁剪两个角度出发。常用的轻量级神经网络有MobileNet_V2、MobileNet_V3_small、MobileNet_V3_large、 ShuffleNet_V2、SqueezeNet和EfficentNet等。
MobileNet_V3是轻量级神经网络架构,其包含了MobileNetV3有两个版本:MobileNetV3-Small与MobileNetV3-Large,分别对应对计算和存储要求低和高的版本。与MobileNetV2相比,MobileNetV3-Large在ImageNet分类上的准确率提高了3.2%,同时延迟降低了15%。与MobileNetV2相比, MobileNetV3-small的准确率高4.6%,同时延迟降低了5%。
发明内容
针对现有技术中存在的上述问题,本发明的目的在于提供一种葡萄藤冬剪点检测算法,能够快速准确的找到葡萄藤上冬剪点的位置,进而为机械自动化冬剪技术的实现提供支持。
本发明提供如下技术方案:一种葡萄藤冬剪点检测算法,其特征在于:包括以下具体步骤:
一种葡萄藤冬剪点检测算法,其特征在于:包括以下具体步骤:
步骤一、分割葡萄藤区域:在采集的葡萄藤图像中分割出葡萄藤区域,得到初步的分割图像,并对初步的分割图像进行形态学去噪操作;
步骤二、葡萄藤区域细化与向量化:对分割出的葡萄藤区域,采用IEPTA 细化算法提取出每一根葡萄藤枝干的骨架,即枝干的中轴线,然后在交叉点处打断并将骨架线段向量化;
步骤三、葡萄藤连接关系重建:根据枝干连接关系的判断准则,判断各个葡萄藤枝干之间的连接关系,最终得到葡萄藤图像中各段枝干间的完整连接关系;
步骤四、找到需剪枝的葡萄藤枝干:依据步骤三中得到的枝干间连接关系,找到需要冬剪的葡萄藤枝干,并在该葡萄藤枝干区域获取检测芽点的候选框;
步骤五、检测芽点并确定剪枝点:对步骤四中获取的候选框,采用轻量级神经网络算法检测芽点,并确定冬剪点的位置。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤一中,采用超像素方法和BPNN分类网络对采集的葡萄藤图像进行葡萄藤区域分割,在针对简单背景的应用场景时,也可采用颜色阈值分割方法进行分割,当采用超像素方法和BPNN分类网络对采集的葡萄藤图像进行葡萄藤区域分割时,包括以下具体步骤:
1.1、训练阶段:
1.1.1、采集葡萄藤图像样本,并人工标记出葡萄藤区域,选取一部分葡萄藤图像作为训练图像,人工标记出葡萄藤区域的二值图像作为训练标签图像,另一部分作为测试集;
1.1.2、对训练图像使用SLIC超像素分割方法,把训练图像分割成若干个像素块,每个像素块内部是颜色特征相似的像素的聚类;
1.1.3、制作训练用像素块样本标签,根据训练标签图像判断每一个像素块是否属于葡萄藤区域;
1.1.4、对训练样本中所有图像分别随机选取合适数量的葡萄藤区域像素块和非葡萄藤区域的像素块,提取像素块中的特征信息,所述特征信息包括颜色信息和纹理信息;
1.1.5、将从葡萄区域像素块中提取的特征信息作为正样本,从非葡萄区域像素块中提取的特征信息作为负样本,训练BPNN分类器,最终得到能够根据特征信息分辨出像素块是否属于葡萄藤区域的BPNN分类器;
1.2、实际使用阶段:
1.2.1、对待分割的葡萄藤图像进行SLIC超像素分割,使其分割成许多的像素块;
1.2.2、采用训练阶段训练得到的BPNN分类器,判断葡萄藤图像中每一个像素块是否属于葡萄藤区域,得到初步的分割图像;
1.2.3、对初步分割图像进行形态学去噪操作,最终得到分割结果图像。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤1.1.4中,颜色信息是RGB、YCrCb、HSV三种颜色空间中的各通道颜色信息在像素块中的均值和方差,纹理特征是像素块中的LBP特征。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤1.1.3、在制作训练用像素块样本标签时,判断每一个像素块是否属于葡萄藤区域的判断方法为:当一个像素块中的像素点属于葡萄藤区域像素点的数量占这个像素块中像素点总数量的80%及以上,则认为该像素块整体是属于葡萄藤区域的;否则,则认为该像素块不属于葡萄藤区域。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤一中,采用超像素分割和BPNN进行分割葡萄藤区域过程中,结合深度图像,将超像素分割后的每一个像素块中的平均深度作为一个信息维度输入到BPNN中,以辅助提高分割近景与远景的准确率。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤二包括以下具体步骤:
2.1、细化步骤:采用IEPTA细化算法,增加两个对称的映像子迭代过程,不仅增加了单次迭代去除的像素数量,减少迭代次数,而且从左上边缘,右下边缘,左下边缘,右上边缘多方向去除像素,使得获得的细化结果更加接近中心线;
2.2、向量化步骤:
2.2.1、通过3*3的卷积找到葡萄藤图像中所有枝干的交叉点;
2.2.2、先在细化后的葡萄藤图像中根据8邻域像素和是否为2来搜索一个枝干起始点,然后以该点为起点,循环搜索直到穷尽所有连通枝干,并建立列表存放同一段枝干上所有的像素点位置信息;
2.2.3、全图搜索未被搜索到的起始点,重复步骤2.2.2,直至葡萄藤图像中所有枝干像素点都被搜索到,使得图中每一段枝干的像素点位置信息都组成一个列表。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤三的具体过程如下:首先将像素长度小于当前图像像素边长二十分之一的枝干删除;然后计算每根枝干端点与其他枝干端点间的距离,据此判断出枝干间的初步连接关系;最后,从最下方的枝干开始,依据初步连接关系和判断准则或者采用针对该应用情景训练得到的分类器逐步确定枝干间的最终连接关系。
所述的一种葡萄藤冬剪点检测算法,其特征在于所述判断准则的判断步骤如下:
1)从所有枝干中找出line2长度小于设定阈值的枝干作为候选枝干;
2)去除角度θ2大于90°或角度θ1大于45°的候选枝干;
3)剩余候选枝干中,选择角度θ2最小的枝干作为连接枝干;
4)若判断完成后,有某一枝干被多个完整葡萄藤共用,则再加入该被多个完整葡萄藤共用的枝干更前一段枝干的角度重新判断该枝干的连接关系;
其中,line1和line3为相邻两个枝干的端部结构,近似看作直线,虚线 a为line3的延长线,虚线b为line1的平行线,line2为line1端点与line3 端点的连线,θ1为虚线a与line2之间的夹角,θ2为虚线a与虚线b之间的夹角。
9.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤四中,找到需要冬剪的葡萄藤枝干的具体过程如下:根据葡萄的不同品种、种植条件,人工选择采用冬剪方式,不同的冬剪方式所保留的枝干和芽点数量不同,根据人工选择的冬剪方式和步骤三中确定的枝干连接关系,确定出需要进行剪枝的葡萄藤枝干。
10.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤六中采用mobileNetV3_small轻量级神经网络算法检测芽点并确定剪枝点,包括以下具体步骤:
5.1、训练阶段:
5.1.1、首先对葡萄藤图像集中的图像提取出细化后的枝干图像,然后根据枝干位置,生成一系列以细化后的枝干像素点为中心点的不同大小的候选框,截取所有候选框中的图像并采用降采样和上采样手段保存成大小相同图像样本集;
5.1.2、人工在该图像样本集中挑选出包含芽点的图像和不包含芽点的图像,作为之后训练用的正样本和负样本,所述正负样本再次细分为正样本-芽点正面、正样本-芽点侧面、负样本-葡萄藤枝干、负样本-枝干断点、负样本 -棚架和负样本-枯叶六类,将样本数据分为训练集与测试集,并对训练集进行线下数据增强,将训练集样本扩增;
5.1.3、构建MobileNetV3_small轻量级神经网络模型,将数据投入到模型中,采用合适的学习率调整策略进行训练,得到训练完成的模型;
5.2、实际使用阶段:
5.2.1、对5.1步骤中确定的需要进行剪枝的葡萄藤枝干,生成一系列以细化后的枝干像素点为中心点的不同大小的候选框,截取所有候选框中的图像并采用降采样和上采样手段使之变为大小相等的图像,并采用训练好的 MobileNetV3_small轻量级神经网络模型对其进行分类,找出包含芽点的候选框,然后对重叠程度高的候选框进行合并;
5.2.2、依据需要剪枝的枝干上找出的芽点的位置和步骤四中人工确定的冬剪方式,确定剪枝点的具体位置。
通过采用上述技术,与现有技术相比,本发明的有益效果如下:
1)本发明采用SLIC超像素方法分割葡萄藤图像中的葡萄藤区域和背景区域,将单一像素点聚集为像素块,使得原本针对单个像素的分类判断转化为对像素块的分类判断,大大加快了分割的速度;
2)本发明采用了RGB、YCrCb、HSV三种颜色空间中的各通道颜色信息在像素块中的均值和方差以及像素块中的LBP纹理特征作为分割依据来训练 BPNN分类器,结合使用了多种颜色特征和纹理特征,提高了分割的准确度;
3)本发明采用了效果更好的细化算法,不仅减少了细化时间,而且有效提高了细化精度,减少了冗余像素点,实现了细化结果的单像素化,使得细化结果更加接近中心线;
4)本发明将细化后的葡萄藤骨架进行枝干连接关系重建,进而依据连接关系找到需要剪枝的葡萄藤枝干,有效避免了对其他不需要剪枝的葡萄藤枝干的冗余检测,提高了效率;
5)本发明比较多种轻量级神经网络模型后,选择采用综合效果较好的mobileNetV3_small神经网络算法来分类带芽点的枝干和不带芽点的枝干,相比于Bag ofFeatures、角点检测等传统的方法,能够有效区分被截断的枝干与带芽点的枝干,减少了错误分类,提高了分类的准确率。
附图说明
图1为本发明的葡萄藤图片原图;
图2为本发明的葡萄藤图片经SLIC超像素分割后的图;
图3为本发明的分割出的葡萄藤区域图;
图4为本发明的细化后葡萄藤骨架图;
图5为本发明的框出检测到芽点的图;
图6为本发明的总流程图;
图7为本发明的分割葡萄藤区域步骤流程图;
图8为本发明的葡萄藤区域细化与向量化步骤流程图;
图9为本发明的葡萄藤连接关系重建步骤流程图;
图10为本发明的葡萄藤连接关系重建步骤流程图;
图11为本发明的各类分类样本的示例图。
图12为本发明葡萄藤连接关系重建步骤判断示例图
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合说明书附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
如图1-11所示,一种葡萄藤冬剪点检测方法,具体包括如下步骤:
步骤一:分割葡萄藤区域
分割葡萄藤区域步骤采用SLIC超像素分割算法与BPNN分类器结合使用的方法从图片中找出葡萄藤区域,该步骤又可分为训练阶段和实际使用阶段。
在训练阶段中需要采集带标签的训练数据,该标签可分为0和1,分别表示非葡萄藤区域和葡萄藤区域。获得该训练数据需要结合使用SLIC超像素分割算法、合适数量的葡萄藤图像和相应的人工标记图像。葡萄藤图像通过在冬剪时节的葡萄园采用摄像机拍摄获得,如图1,其中,矩形框位置为检测出的芽点,“×”为依据保留三个芽点的剪枝原则确定的剪枝点,人工标记图像则是人工标记出拍摄获得的葡萄藤图像中的葡萄藤区域的图像。人工标记图像为二值图像,其图像的长宽与葡萄藤图像相同,人工标记出的葡萄藤区域的像素值为255,其余非葡萄藤区域的像素值为0。
对葡萄藤图像使用SLIC超像素分割算法,可以得到如图2的分割结果,原本单个像素被分成了一个个像素块,每一个像素块内的特征是相似的,且像素块的边界较好的保持了原图像内的边界。
对每一张葡萄图像中的每一个像素块提取特征,这些特征包括RGB、 YCrCb、HSV三种颜色空间中的各通道颜色信息在像素块中的均值和方差以及 LBP纹理特征。同时,提取每一个像素块在对应人工标记图像中相同位置区域的标签,若将像素块对应区域内80%以上像素点属于葡萄藤区域作为该像素块是否属于葡萄藤区域的阈值,则若像素块在对应人工标记图像中相同位置区域的平均像素值大于204,该像素块属于葡萄藤区域,标记为1;否则,该像素块不属于葡萄藤区域,标记为0。提取完特征后,每一个像素块就是一组带标签的特征数据。
将获得的所有特征数据随机抽取出合适数量,分成两部分,一部分为训练集,数量为总数的80%,用于训练数据;一部分为测试集,数量为总数的 20%,用于在训练后测试分类的准确率。将训练集投入到设定好超参数信息的 BPNN神经网络中训练,获得能够根据上述的特征信息分辨出像素块是否属于葡萄藤区域的BPNN分类器。
在实际使用阶段中,首先需要对待分割的图像进行SLIC超像素分割,使其分割成许多的像素块,再采用训练阶段训练得到的BPNN分类器,判断图像中每一个像素块是否属于葡萄藤区域,得到初步的分割图像。
随后需要对初步分割图像进行腐蚀、膨胀、去除小连通区域等形态学去噪操作,最终得到分割结果图像,如图3。
步骤二:葡萄藤区域细化与向量化
该步骤可分为两个小步骤,葡萄藤区域细化和细化后图像的向量化。
葡萄藤区域细化采用的是IEPTA细化算法,该算法基于EPTA算法去冗余的思想,通过增加判决条件并设计消除模板,达到快速去除冗余像素的目的;增加了两个对称的映像子迭代过程,不仅增加了单次迭代去除的像素数量,减少迭代次数,而且从左上边缘,右下边缘,左下边缘,右上边缘多方向去除像素,使得获得的细化结果更加接近中心线,最终获得的细化结果具有速度快、单像素化好、局部信息保持好等优势。
经过IEPTA算法后,可以获得葡萄藤区域细化后的骨架图,然后需要将该骨架图中各个枝干的位置关系向量化为枝干信息列表。
向量化小步骤首先需要将整副骨架图在各个连接点处打断,进而形成许多枝干线段。打断的方法是采用3*3大小的卷积,细化后图像中枝干像素点值为1,其余像素点值为0,卷积结果大于等于4的点即为交叉点,将这些交叉点置0,即可完成打断。
随后采用搜索的基本思路,先在细化后的图像中根据3*3卷积结果是否为2来搜索一个枝干端点,然后以该点为某一枝干的起点,创建该枝干列表,根据8邻域内的连通关系搜索与其连续的像素点,每搜索到一个像素点就将该点置0,并将该点的位置信息放入对应枝干列表中;再全图搜索未被搜索到的起始点,重复上述步骤,直至图中所有枝干像素点都被搜索到过。经过该步骤后,图中每一段枝干的像素点位置信息都组成了一个列表。
步骤三:葡萄藤连接关系重建
在葡萄藤连接关系重建步骤中,首先将明显不符合要求的极短枝干列表组删去;然后计算每根枝干端点与其他枝干端点间的距离,由于细化后图像使单像素化的,因此在去除交叉点前本来相连的枝干端点与端点间一定仅间隔一个像素点,故可以据此判断出枝干间的初步连接关系;最后,从最下方的枝干开始,依据初步连接关系和以下准则逐步确定枝干间的最终连接关系。
准则1:若初步确认连接的两个枝干的方向夹角超过90°,则实际不相连;
准则2:若两根枝干单独相连时(即某一连接点有且仅有两个相连枝干),且两者方向夹角不超过90°,则两者为同一根枝干;若多根枝干连接,选择方向夹角最小且不超过90°的枝干连接。若所有候选连接枝干方向夹角都超过90°,则视为无连接。
准则3:枝干列表长度小于8的枝干被归为细碎枝杈;在确定最终连接关系中,若另一端连接的是细碎枝杈,则跳过细碎枝杈考虑连接关系(即直接与细碎枝杈另一端相连的枝干考虑连接关系),若细碎枝杈另一端无枝干连接,则视这一连接为空;
此外,依据准则判断枝干间最终连接关系的小步骤也可采用训练SVM分类器或是使用其他分类器的方法代替。在训练样本数据丰富且较好的兼顾多种情况时,采用分类器的方法可能会取得更好的效果。
步骤四:找到需剪枝的葡萄藤枝干
在找到需剪枝的葡萄藤枝干步骤中,由于不同品种、不同种植条件的葡萄所用的冬剪方式不同,需要人工来根据这些信息选择合适的冬剪方式。常用的葡萄冬剪方式有疏枝、回缩和短截三种,其中短截又可以分为长梢(留 8-12个芽)、中梢(留5-7个芽)、短梢(留2-4个芽)和极短梢(留1-2个芽)。
在该步骤中,根据人工选择的冬剪方式和上述步骤中构建的枝干连接关系,确定出需要进行剪枝的葡萄藤枝干。
步骤五:检测芽点并确定剪枝点
在检测芽点并确定剪枝点这一步骤中,可以分为检测芽点和确定剪枝点两个小步骤,而检测芽点小步骤采用的是轻量级神经网络的方法,由可分为训练阶段和实际使用阶段。
在检测芽点小步骤的训练阶段,首先需要手工从葡萄藤图像数据中框选出具体芽点的图像和典型的负样本图像,并制作样本数据集。为提高分类准确率,将正负样本细分为正样本-芽点正面、正样本-芽点侧面、负样本-葡萄藤枝干、负样本-枝干断点、负样本-枯叶和负样本-棚架这六类,设置训练集和测试集的比例为7:3,将这些数据投入到轻量级神经网络中训练。由于总样本数量相对较少(总数约5000幅图像),故对训练集进行线下数据增强,采用旋转、对称等方式,将训练集样本扩增到约20000幅图像。综合比较了 MobileNet_V2、MobileNet_V3_small、MobileNet_V3_large、ShuffleNet_V2 和SqueezeNet1.1这五种轻量级神经网络模型在该样本下的六分类准确率、正负样本分类准确和参数量情况,如表1所示,最终决定参数量较小但分类准确率相对较高的MobileNet_V3_small神经网络模型。
在检测芽点小步骤的实际使用阶段,首先需要根据上一步骤中得到的需要剪枝的葡萄藤枝干的位置,确定一系列的候选框。在需要剪枝的枝干像素数列中,每间隔一定像素数量,选取一个像素作为中心点作多个不同像素边长的正方形候选框。所述间隔的像素数量与候选框的像素大小应根据实际情况需求选取。提取出这些候选框中的图像,通过缩放操作变为224*224*3大小,然后将这些图像输入到已经训练好的MobileNet_V3_small轻量级神经网络模型进行分类。依据分类结果确定原图像中需要剪枝的葡萄藤枝干上哪些位置是芽点,并将部分高重叠率的候选框合并防止后续计算芽点数量时重复计算同一芽点。
在确定剪枝点小步骤中,根据在前文步骤中获得的需要剪枝的葡萄藤枝干像素列表以及相应枝干的检测出芽点位置,从靠近主枝一侧开始,逐步计数枝干上的芽点数量,当芽点数量到达剪留数量时,将该芽点向外约2cm处作为剪枝点。
表1
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种葡萄藤冬剪点检测算法,其特征在于:包括以下具体步骤:
步骤一、分割葡萄藤区域:在采集的葡萄藤图像中分割出葡萄藤区域,得到初步的分割图像,并对初步的分割图像进行形态学去噪操作;
步骤二、葡萄藤区域细化与向量化:对分割出的葡萄藤区域,采用IEPTA细化算法提取出每一根葡萄藤枝干的骨架,即枝干的中轴线,然后在交叉点处打断并将骨架线段向量化;
步骤三、葡萄藤连接关系重建:根据枝干连接关系的判断准则,判断各个葡萄藤枝干之间的连接关系,最终得到葡萄藤图像中各段枝干间的完整连接关系;
步骤四、找到需剪枝的葡萄藤枝干:依据步骤三中得到的枝干间连接关系,找到需要冬剪的葡萄藤枝干,并在该葡萄藤枝干区域获取检测芽点的候选框;
步骤五、检测芽点并确定剪枝点:对步骤四中获取的候选框,采用轻量级神经网络算法检测芽点,并确定冬剪点的位置。
2.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤一中,采用超像素方法和BPNN分类网络对采集的葡萄藤图像进行葡萄藤区域分割,在针对简单背景的应用场景时,也可采用颜色阈值分割方法进行分割,当采用超像素方法和BPNN分类网络对采集的葡萄藤图像进行葡萄藤区域分割时,包括以下具体步骤:
1.1、训练阶段:
1.1.1、采集葡萄藤图像样本,并人工标记出葡萄藤区域,选取一部分葡萄藤图像作为训练图像,人工标记出葡萄藤区域的二值图像作为训练标签图像,另一部分作为测试集;
1.1.2、对训练图像使用SLIC超像素分割方法,把训练图像分割成若干个像素块,每个像素块内部是颜色特征相似的像素的聚类;
1.1.3、制作训练用像素块样本标签,根据训练标签图像判断每一个像素块是否属于葡萄藤区域;
1.1.4、对训练样本中所有图像分别随机选取合适数量的葡萄藤区域像素块和非葡萄藤区域的像素块,提取像素块中的特征信息,所述特征信息包括颜色信息和纹理信息;
1.1.5、将从葡萄区域像素块中提取的特征信息作为正样本,从非葡萄区域像素块中提取的特征信息作为负样本,训练BPNN分类器,最终得到能够根据特征信息分辨出像素块是否属于葡萄藤区域的BPNN分类器;
1.2、实际使用阶段:
1.2.1、对待分割的葡萄藤图像进行SLIC超像素分割,使其分割成许多的像素块;
1.2.2、采用训练阶段训练得到的BPNN分类器,判断葡萄藤图像中每一个像素块是否属于葡萄藤区域,得到初步的分割图像;
1.2.3、对初步分割图像进行形态学去噪操作,最终得到分割结果图像。
3.根据权利要求2所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤1.1.4中,颜色信息是RGB、YCrCb、HSV三种颜色空间中的各通道颜色信息在像素块中的均值和方差,纹理特征是像素块中的LBP特征。
4.根据权利要求2所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤1.1.3、在制作训练用像素块样本标签时,判断每一个像素块是否属于葡萄藤区域的判断方法为:当一个像素块中的像素点属于葡萄藤区域像素点的数量占这个像素块中像素点总数量的80%及以上,则认为该像素块整体是属于葡萄藤区域的;否则,则认为该像素块不属于葡萄藤区域。
5.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤一中,采用超像素分割和BPNN进行分割葡萄藤区域过程中,结合深度图像,将超像素分割后的每一个像素块中的平均深度作为一个信息维度输入到BPNN中,以辅助提高分割近景与远景的准确率。
6.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤二包括以下具体步骤:
2.1、细化步骤:采用IEPTA细化算法,增加两个对称的映像子迭代过程,不仅增加了单次迭代去除的像素数量,减少迭代次数,而且从左上边缘,右下边缘,左下边缘,右上边缘多方向去除像素,使得获得的细化结果更加接近中心线;
2.2、向量化步骤:
2.2.1、通过3*3的卷积找到葡萄藤图像中所有枝干的交叉点;
2.2.2、先在细化后的葡萄藤图像中根据8邻域像素和是否为2来搜索一个枝干起始点,然后以该点为起点,循环搜索直到穷尽所有连通枝干,并建立列表存放同一段枝干上所有的像素点位置信息;
2.2.3、全图搜索未被搜索到的起始点,重复步骤2.2.2,直至葡萄藤图像中所有枝干像素点都被搜索到,使得图中每一段枝干的像素点位置信息都组成一个列表。
7.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤三的具体过程如下:首先将像素长度小于当前图像像素边长二十分之一的枝干删除;然后计算每根枝干端点与其他枝干端点间的距离,据此判断出枝干间的初步连接关系;最后,从最下方的枝干开始,依据初步连接关系和判断准则或者采用针对该应用情景训练得到的分类器逐步确定枝干间的最终连接关系。
8.根据权利要求7所述的一种葡萄藤冬剪点检测算法,其特征在于所述判断准则的判断步骤如下:
1)从所有枝干中找出line2长度小于设定阈值的枝干作为候选枝干;
2)去除角度θ2大于90°或角度θ1大于45°的候选枝干;
3)剩余候选枝干中,选择角度θ2最小的枝干作为连接枝干;
4)若判断完成后,有某一枝干被多个完整葡萄藤共用,则再加入该被多个完整葡萄藤共用的枝干更前一段枝干的角度重新判断该枝干的连接关系;
其中,line1和line3为相邻两个枝干的端部结构,虚线a为line3的延长线,虚线b为line1的平行线,line2为line1端点与line3端点的连线,θ1为虚线a与line2之间的夹角,θ2为虚线a与虚线b之间的夹角。
9.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤四中,找到需要冬剪的葡萄藤枝干的具体过程如下:根据葡萄的不同品种、种植条件,人工选择采用冬剪方式,不同的冬剪方式所保留的枝干和芽点数量不同,根据人工选择的冬剪方式和步骤三中确定的枝干连接关系,确定出需要进行剪枝的葡萄藤枝干。
10.根据权利要求1所述的一种葡萄藤冬剪点检测算法,其特征在于所述步骤六中采用mobileNetV3_small轻量级神经网络算法检测芽点并确定剪枝点,包括以下具体步骤:
5.1、训练阶段:
5.1.1、首先对葡萄藤图像集中的图像提取出细化后的枝干图像,然后根据枝干位置,生成一系列以细化后的枝干像素点为中心点的不同大小的候选框,截取所有候选框中的图像并采用降采样和上采样手段保存成大小相同图像样本集;
5.1.2、人工在该图像样本集中挑选出包含芽点的图像和不包含芽点的图像,作为之后训练用的正样本和负样本,所述正负样本再次细分为正样本-芽点正面、正样本-芽点侧面、负样本-葡萄藤枝干、负样本-枝干断点、负样本-棚架和负样本-枯叶六类,将样本数据分为训练集与测试集,并对训练集进行线下数据增强,将训练集样本扩增;
5.1.3、构建MobileNetV3_small轻量级神经网络模型,将数据投入到模型中,采用合适的学习率调整策略进行训练,得到训练完成的模型;
5.2、实际使用阶段:
5.2.1、对5.1步骤中确定的需要进行剪枝的葡萄藤枝干,生成一系列以细化后的枝干像素点为中心点的不同大小的候选框,截取所有候选框中的图像并采用降采样和上采样手段使之变为大小相等的图像,并采用训练好的MobileNetV3_small轻量级神经网络模型对其进行分类,找出包含芽点的候选框,然后对重叠程度高的候选框进行合并;
5.2.2、依据需要剪枝的枝干上找出的芽点的位置和步骤四中人工确定的冬剪方式,确定剪枝点的具体位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110441404.4A CN113111830A (zh) | 2021-04-23 | 2021-04-23 | 一种葡萄藤冬剪点检测算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110441404.4A CN113111830A (zh) | 2021-04-23 | 2021-04-23 | 一种葡萄藤冬剪点检测算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113111830A true CN113111830A (zh) | 2021-07-13 |
Family
ID=76719561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110441404.4A Withdrawn CN113111830A (zh) | 2021-04-23 | 2021-04-23 | 一种葡萄藤冬剪点检测算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113111830A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486896A (zh) * | 2021-07-22 | 2021-10-08 | 成都圭目机器人有限公司 | 一种道面图像断续裂缝的自动连接方法 |
CN113516097A (zh) * | 2021-07-29 | 2021-10-19 | 东北大学秦皇岛分校 | 一种基于改进EfficentNet-V2的植物叶片疾病识别方法 |
-
2021
- 2021-04-23 CN CN202110441404.4A patent/CN113111830A/zh not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486896A (zh) * | 2021-07-22 | 2021-10-08 | 成都圭目机器人有限公司 | 一种道面图像断续裂缝的自动连接方法 |
CN113486896B (zh) * | 2021-07-22 | 2023-06-20 | 成都圭目机器人有限公司 | 一种道面图像断续裂缝的自动连接方法 |
CN113516097A (zh) * | 2021-07-29 | 2021-10-19 | 东北大学秦皇岛分校 | 一种基于改进EfficentNet-V2的植物叶片疾病识别方法 |
CN113516097B (zh) * | 2021-07-29 | 2022-08-09 | 东北大学秦皇岛分校 | 一种基于改进EfficentNet-V2的植物叶片疾病识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Detection of fruit-bearing branches and localization of litchi clusters for vision-based harvesting robots | |
Tian et al. | Apple detection during different growth stages in orchards using the improved YOLO-V3 model | |
CN109711325B (zh) | 一种芒果采摘点识别方法 | |
CN105718945B (zh) | 基于分水岭和神经网络的苹果采摘机器人夜间图像识别方法 | |
CN113111830A (zh) | 一种葡萄藤冬剪点检测算法 | |
CN114359727A (zh) | 基于轻量级优化Yolo v4的茶叶病害识别方法及系统 | |
CN111178177A (zh) | 一种基于卷积神经网络的黄瓜病害识别方法 | |
Zheng et al. | A method of green citrus detection in natural environments using a deep convolutional neural network | |
Ma et al. | Using an improved lightweight YOLOv8 model for real-time detection of multi-stage apple fruit in complex orchard environments | |
Yan et al. | Identification and picking point positioning of tender tea shoots based on MR3P-TS model | |
CN114170511A (zh) | 基于Cascade RCNN的路面裂缝病害识别方法 | |
CN114067206A (zh) | 一种基于深度图像的球形果实识别定位方法 | |
CN115018982A (zh) | 一种基于地基激光雷达点云的树木数字孪生方法 | |
CN117456358A (zh) | 一种基于YOLOv5神经网络的植物病虫害检测方法 | |
CN118097372B (zh) | 一种基于人工智能的作物生长可视化预测方法 | |
Liu et al. | “Is this blueberry ripe?”: a blueberry ripeness detection algorithm for use on picking robots | |
CN114898359A (zh) | 一种基于改进EfficientDet的荔枝病虫害检测方法 | |
CN105631451A (zh) | 一种基于安卓系统的植物叶片识别方法 | |
CN116740337A (zh) | 一种红花采摘点识别定位方法及采摘系统 | |
CN117132802A (zh) | 一种田间小麦病虫害识别方法、装置及存储介质 | |
CN113850254B (zh) | 基于深度学习的建筑物矢量轮廓化简方法、模型及模型建立方法 | |
CN112329697B (zh) | 一种基于改进YOLOv3的树上果实识别方法 | |
CN116206210A (zh) | 一种基于NAS-Swin的遥感影像农业大棚提取方法 | |
Annapoorna et al. | Detection and localization of cotton based on deep neural networks | |
CN114663791A (zh) | 一种非结构化环境下面向剪枝机器人的枝条识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210713 |
|
WW01 | Invention patent application withdrawn after publication |