CN114494441A - 基于深度学习的葡萄及其采摘点同步识别定位方法、装置 - Google Patents
基于深度学习的葡萄及其采摘点同步识别定位方法、装置 Download PDFInfo
- Publication number
- CN114494441A CN114494441A CN202210335650.6A CN202210335650A CN114494441A CN 114494441 A CN114494441 A CN 114494441A CN 202210335650 A CN202210335650 A CN 202210335650A CN 114494441 A CN114494441 A CN 114494441A
- Authority
- CN
- China
- Prior art keywords
- grape
- model
- yolo
- picking
- frame
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01D—HARVESTING; MOWING
- A01D46/00—Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
- A01D46/30—Robotic devices for individually picking crops
-
- 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
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0014—Image feed-back for automatic industrial control, e.g. robot with camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
- G06T2207/30188—Vegetation; Agriculture
Abstract
本申请涉及一种基于深度学习的葡萄及其采摘点同步识别定位方法、装置。所述方法包括:获取待检测的葡萄图像;将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标。采用本方法能够实现葡萄边框位置数据和采摘点的坐标的快速同步检测。
Description
技术领域
本申请涉及机器视觉技术领域,特别是涉及一种基于深度学习的葡萄及其采摘点同步识别定位方法、装置。
背景技术
葡萄是日常生活中最常见的水果,每年在全世界范围内的产量可达到7500万吨。葡萄常采用人工的方式进行采摘,这种采摘方式非常耗时并且低效。另外,葡萄种植园一般地势平台,环境可控。综合上述,对葡萄进行智能化采摘非常有必要并且葡萄的种植场景决定了葡萄非常适合智能化采摘。
对于智能化的葡萄采摘而言,葡萄的视觉识别以及采摘点预测是智能化采摘中非常重要的一步,也是后续采摘操作的基础。首先,葡萄的视觉识别常采用深度学习模型,包括RCNN模型、YOLO模型等。RCNN模型一般预测葡萄串区域的掩膜,包含了详细的葡萄区域,预测精度高,但是速度慢;YOLO模型则预测葡萄串区域的边界框,预测速度快。实际上,常规的葡萄识别任务仅需要获取葡萄串区域的边界框,所以较多采用YOLO模型,但是目前YOLO模型比较复杂。其次,葡萄采摘点的预测一般需要先通过深度学习模型预测葡萄区域,进而根据葡萄区域的掩膜或者边界框进行采摘点的计算,这种计算方法速度慢且准确性欠佳,并且对葡萄区域的识别具有依赖性。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高采摘点检测速度的基于深度学习的葡萄及其采摘点同步识别定位方法、装置。
一种基于深度学习的葡萄及其采摘点同步识别定位方法,所述方法包括:
采集葡萄图像并标注,构建模型训练数据集;
将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式;所述模型训练数据集中标注的标签格式如下:
获取待检测的葡萄图像;
将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标;
其中,简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
在其中一个实施例中,所述将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标,包括:
将待检测的葡萄图像输入改造后的YOLO v4模型中轻量化Backbone,通过轻量化Backbone提取葡萄边框特征和采摘点特征;
将葡萄边框特征和采摘点特征使用neck进行特征加强,生成3个不同尺度的特征图;
对每个网格分别使用3个预设的锚框进行预测,得到网格对应的预测结果;所述锚框预测的结果由葡萄边框的位置及尺寸元素、置信度元素、类别元素以及表示采摘点坐标的元素组成;
对所有网格对应的预测结果采用非极大值抑制方法进行筛选,得到葡萄边框位置数据和采摘点的坐标。
在其中一个实施例中,葡萄边框的位置及尺寸元素的解析公式如下:
其中,为sigmoid函数;、为预测的葡萄边框中心点相对于所处的网格左上角角点的偏移量,、为预测的葡萄边框的宽、高度的初步预测值;、为预测的葡萄边框中心所处的网格左上角角点的坐标,、为anchor box的尺寸;
采摘点坐标的元素的解析公式如下:
在其中一个实施例中,初始YOLO v4模型的损失函数为组合损失函数,其包括分类损失、置信度损失、边界框损失以及采摘点损失,计算公式如下:
在其中一个实施例中,所述改造后的YOLO v4模型包括如下组成部分:Backbone,用于图像特征提取,由卷积神经网络模型组成,包括卷积层、简便线性变换操作、池化层、BN层和激活函数;Neck,连接Backbone与Heads,用于为Heads生成不同尺度的特征图;Heads,基于Neck生成的特征图进行目标检测,由3个头部组成,允许进行3个尺度下的目标检测。
一种基于深度学习的葡萄及其采摘点同步识别定位装置,所述装置包括:
标注模块,用于采集葡萄图像并标注,构建模型训练数据集;
训练模块,用于将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式;所述模型训练数据集中标注的标签格式如下:
待检测图像获取模块,用于获取待检测的葡萄图像;
目标计算模块,用于将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标;
其中,简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
采集葡萄图像并标注,构建模型训练数据集;
将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式;所述模型训练数据集中标注的标签格式如下:
获取待检测的葡萄图像;
将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标;
其中,简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
采集葡萄图像并标注,构建模型训练数据集;
将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式;所述模型训练数据集中标注的标签格式如下:
获取待检测的葡萄图像;
将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标;
其中,简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
上述基于深度学习的葡萄及其采摘点同步识别定位方法、装置、计算机设备和存储介质,通过改造后的YOLO v4模型,相比于其它的网络模型,其只有一个阶段的数据处理,能够很快的获得目标数据,并且改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,能够加快特征的处理速度,通过neck进行加强特征,再通过heads进行特征解析,可以准确的获得葡萄边框位置数据和采摘点的坐标,本申请这种处理方式,在准确的获得葡萄边框位置数据和采摘点的坐标情况下,可以提高采摘机器人的采摘效率。
附图说明
图1为一个实施例中基于深度学习的葡萄及其采摘点同步识别定位方法的流程示意图;
图2为一个实施例中改造后的YOLO v4模型的结构示意图;
图3为一个实施例中采摘点预测结构解析图;
图4为一个实施例中基于深度学习的葡萄及其采摘点同步识别定位装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种基于深度学习的葡萄及其采摘点同步识别定位方法,包括以下步骤:
S110,获取待检测的葡萄图像。
其中,待检测的葡萄图像通过安装在采摘机器人的摄像头获取。通过摄像头获取的待检测的葡萄图像发送至机器人内置服务器或者后台服务器进行处理。
S120,将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标。
其中,机器人内置服务器或者后台服务器中部署了改造后的YOLO v4模型,通过改造后的YOLO v4模型对待检测的葡萄图像进行处理,得到葡萄边框位置数据和采摘点的坐标。
上述基于深度学习的葡萄及其采摘点同步识别定位方法中,通过改造后的YOLOv4模型,相比于其它的网络模型,其只有一个阶段的数据处理,能够很快的获得目标数据,并且改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,能够加快特征的处理速度,通过neck进行加强特征,再通过heads进行特征解析,可以准确的获得葡萄边框位置数据和采摘点的坐标,本申请这种处理方式,在准确的获得葡萄边框位置数据和采摘点的坐标情况下,可以提高采摘机器人的采摘效率。
在其中一个实施例中,所述将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标,包括:将待检测的葡萄图像输入改造后的YOLO v4模型中轻量化Backbone,通过轻量化Backbone提取葡萄边框特征和采摘点特征;将葡萄边框特征和采摘点特征使用neck进行特征加强,生成3个不同尺度的特征图;将3个不同尺度的特征图分别分割成个网格;其中,ni为正整数;对每个网格分别使用3个预设的锚框进行预测,得到网格对应的预测结果;所述锚框预测的结果由葡萄边框的位置及尺寸元素、置信度元素、类别元素以及表示采摘点坐标的元素组成;对每个网格对应的预测结果进行解析,得到葡萄边框位置数据和采摘点的坐标。
其中,在现有YOLO v4模型Backbone中使用简便线性变换操作(Ru-Ghost)替换了至少一个残差组件(res unit)中的卷积层生成轻量化Backbone,轻量化Backbone通过简便线性变换操作替代了复杂的残差计算,从而使得葡萄边框特征和采摘点特征提取速度更快。
其中,Heads基于Neck生成3个不同尺度的特征图分别分割成个网格,n1、n2和n3的大小根据目标检测的精确度确定,例如,n1×n1可为20×20,n2×n2可为40×40,n3×n3可为80×80。
其中,每个预设的锚框对网格进行预测都能得到一个预测的结果,那么3个预设的锚框会根据同一网格产生3个预测的结果。每个锚框预测的结果由8个元素组成,分别由4个葡萄边框的位置及尺寸元素、1个置信度元素、1个类别元素以及2个表示采摘点坐标的元素组成。例如,锚框预测的结果为:;其中,score是置信度,表示模型预测结果的可能性大小;为葡萄边框中心点坐标,分别为葡萄边框的宽度的预测值、高度的预测值;为葡萄串的采摘点的坐标的预测值。在一个待检测的葡萄图像中,可能存在多挂葡萄,模型识别到多挂葡萄的葡萄边框和采摘点。
在其中一个实施例中,如图4所示,图中1表示待检测的葡萄图像,2表示网格,3表示图像原点,4表示网格的角点,5表示采摘点,6表示葡萄边框的中心点,7表示葡萄边框,葡萄边框的位置及尺寸元素的解析公式如下:
其中,为sigmoid函数;、为预测的葡萄边框中心点相对于所处的网格左上角角点的偏移量,、为预测的葡萄边框的宽、高度的初步预测值;、为预测的葡萄边框中心所处的网格左上角角点的坐标,、为anchor box的尺寸;
采摘点坐标的元素的解析公式如下:
在其中一个实施例中,基于深度学习的葡萄及其采摘点同步识别定位方法还包括:采集葡萄图像并标注,构建模型训练数据集;将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式。
具体的,通过相机或者网络上搜集葡萄图像,图像的分辨率不限,而后利用labelimg标注葡萄边框与采摘点。由于labelimg不具备采摘点的标注功能,因此采摘点也通过边界框标注的方式进行标注,边界框类别为采摘点,边界框的中心点坐标代表采摘点坐标。共采集300张葡萄图像,共标注4384个葡萄边框、4384个采摘点,每个葡萄边框匹配一个采摘点。在训练数据集中,242张葡萄图像及其标签作为训练集,58张图像及其标签作为测试集。基于原始YOLO v4模型构建葡萄及其采摘点同步识别定位模型,模型的输入图像尺寸为640×640,由简便线性变换操作替换原有backbone(CSPDarknet53)中残差模块的卷积层,从而达到使模型轻量化的目的。另外,改造YOLO v4模型heads,在每个anchor box的预测结果中加入采摘点的坐标项,使其模型具有同步预测采摘点的功能。如图2所示,本实施例构建的模型中,heads中输出的预测结果通道为24(由3个锚框预测,每个锚框预测的结果由8个元素组成,则每个网格对应24个结果数据)。在3个尺度下,网格的尺寸分别为20×20、40×40、80×80,因此,在3个尺度下,输出结果的尺寸分别为20×20×24、40×40×24、80×80×24。每个网格由3个anchor box进行预测,其中每个锚框预测的结果由8个元素组成,分别由4个葡萄边框的位置及尺寸元素、1个置信度元素、1个类别元素以及2个表示采摘点坐标的元素组成。
将搭建好的初始YOLO v4模型以及在conda环境中,通过模型训练数据集进行训练,训练过程中利用NVIDIA TITAN TRX (24 GB memory)加速训练;设置训练的batch size为8,初始的学习率为0.01,epoch为300。根据设置,训练集可以分为31个batch,每个batch具有8张葡萄图像。训练所采用的损失为组合损失,组合损失共由4项损失项组成,分别为边界框损失项(GIOU)、采摘点损失项、类别损失项、置信度损失项。训练过程中,每完成一次epoch计算一次平均准确率(mAP),并将mAP最高的模型参数保存。
在其中一个实施例中,所述模型训练数据集中标注的标签格式如下:
简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
在其中一个实施例中,初始YOLO v4模型的损失函数为组合损失函数,其包括分类损失、置信度损失、边界框损失以及采摘点损失,计算公式如下:
其中,是模型总损失,是分类损失项,是置信度损失项,是边界框损失项,是采摘点损失项。其中,采摘点损失项可通过葡萄串的采摘点的真实值与葡萄串的采摘点的预测值之间的欧式距离计算得到。本实施例中,相比于传统的模型损失函数构建,通过将分类损失项、置信度损失项、边界框损失项和采摘点损失项组合,可提高最终训练的模型的准确性。
在其中一个实施例中,将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型,具体包括步骤:
S301,将模型训练数据按照批次输入初始YOLO v4模型中,并根据初始YOLO v4模型向前传播,得到初始YOLO v4模型前向传播结果;S302,利用标签真值与前向传播结果计算初始YOLO v4模型损失,并通过反向传播、梯度下降等算法更新初始YOLO v4模型参数;S303,不断重复S301和S302,直至模型损失最小或者模型损失在近10次迭代中不变,得到改造后的YOLO v4模型。
在其中一个实施例中,所述改造后的YOLO v4模型包括如下组成部分:Backbone,用于图像特征提取,由卷积神经网络模型组成,包括卷积层、简便线性变换操作、池化层、BN层和激活函数;Neck,连接Backbone与Heads,用于为Heads生成不同尺度的特征图;Heads,基于Neck生成的特征图进行目标检测,由3个头部组成,允许进行3个尺度下的目标检测。
在其中一个实施例中,对所有网格对应的预测结果采用非极大值抑制方法进行筛选,得到葡萄边框位置数据和采摘点的坐标,包括:按照置信度对所有的锚框预测的结果进行排序;取置信度最高的葡萄边框为基准,移除所有与置信度最高的葡萄边框的交并比大于阈值的预测结果;再取剩下预测结果中置信度第二高的葡萄边框作为基准,并移除所有与置信度最二高的葡萄边框的交并比大于阈值的预测结果;依次类推,取剩下预测结果中置信度第三高的葡萄边框作为基准重复这一过程,直至取剩下预测结果中置信度排序最后的葡萄边框作为基准重复这一过程,获得剩下的预测结果作为葡萄边框位置数据和采摘点的坐标。其中,交并比为两个葡萄边框的交集与两个葡萄边框的并集的面积之比。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种基于深度学习的葡萄及其采摘点同步识别定位装置,包括:待检测图像获取模块210和目标计算模块220,其中:
待检测图像获取模块210,用于获取待检测的葡萄图像。
目标计算模块220,用于将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标。
在其中一个实施例中,所述目标计算模块220,包括:特征提取单元,用于将待检测的葡萄图像输入改造后的YOLO v4模型中轻量化Backbone,通过轻量化Backbone提取葡萄边框特征和采摘点特征;特征图生成单元,用于将葡萄边框特征和采摘点特征使用neck进行特征加强,生成3个不同尺度的特征图;网格划分单元,用于将3个不同尺度的特征图分别分割成个网格;其中,ni为正整数;预测单元,用于对每个网格分别使用3个预设的锚框进行预测,得到网格对应的预测结果;所述锚框预测的结果由葡萄边框的位置及尺寸元素、置信度元素、类别元素以及表示采摘点坐标的元素组成;筛选单元,用于对所有网格对应的预测结果采用非极大值抑制方法进行筛选,得到葡萄边框位置数据和采摘点的坐标。
在其中一个实施例中,葡萄边框的位置及尺寸元素的解析公式如下:
其中,为sigmoid函数;、为预测的葡萄边框中心点相对于所处的网格左上角角点的偏移量,、为预测的葡萄边框的宽、高度的初步预测值;、为预测的葡萄边框中心所处的网格左上角角点的坐标,、为anchor box的尺寸;
采摘点坐标的元素的解析公式如下:
在其中一个实施例中,基于深度学习的葡萄及其采摘点同步识别定位装置,还包括:标注模块,用于采集葡萄图像并标注,构建模型训练数据集;训练模块,用于将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式。
在其中一个实施例中,所述模型训练数据集中标注的标签格式如下:
简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
在其中一个实施例中,初始YOLO v4模型的损失函数为组合损失函数,其包括分类损失、置信度损失、边界框损失以及采摘点损失,计算公式如下:
在其中一个实施例中,所述改造后的YOLO v4模型包括如下组成部分:Backbone,用于图像特征提取,由卷积神经网络模型组成,包括卷积层、简便线性变换操作、池化层、BN层和激活函数;Neck,连接Backbone与Heads,用于为Heads生成不同尺度的特征图;Heads,基于Neck生成的特征图进行目标检测,由3个头部组成,允许进行3个尺度下的目标检测。
关于基于深度学习的葡萄及其采摘点同步识别定位装置的具体限定可以参见上文中对于基于深度学习的葡萄及其采摘点同步识别定位方法的限定,在此不再赘述。上述基于深度学习的葡萄及其采摘点同步识别定位装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储改造后的YOLO v4模型数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于深度学习的葡萄及其采摘点同步识别定位方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种基于深度学习的葡萄及其采摘点同步识别定位方法,其特征在于,所述方法包括:
采集葡萄图像并标注,构建模型训练数据集;
将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式;所述模型训练数据集中标注的标签格式如下:
获取待检测的葡萄图像;
将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标;
其中,简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
2.根据权利要求1所述的方法,其特征在于,所述将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标,包括:
将待检测的葡萄图像输入改造后的YOLO v4模型的轻量化Backbone,通过轻量化Backbone提取葡萄边框特征和采摘点特征;
将葡萄边框特征和采摘点特征使用neck进行特征加强,生成3个不同尺度的特征图;
对每个网格分别使用3个预设的锚框进行预测,得到网格对应的预测结果;所述锚框预测的结果由葡萄边框的位置及尺寸元素、置信度元素、类别元素以及表示采摘点坐标的元素组成;
对所有网格对应的预测结果采用非极大值抑制方法进行筛选,得到葡萄边框位置数据和采摘点的坐标。
5.根据权利要求1所述的方法,其特征在于,所述改造后的YOLO v4模型包括如下组成部分:
Backbone,用于图像特征提取,由卷积神经网络模型组成,包括卷积层、简便线性变换操作、池化层、BN层和激活函数;
Neck,连接Backbone与Heads,用于为Heads生成不同尺度的特征图;
Heads,基于Neck生成的特征图进行目标检测,由3个头部组成,允许进行3个尺度下的目标检测。
6.一种基于深度学习的葡萄及其采摘点同步识别定位装置,其特征在于,所述装置包括:
标注模块,用于采集葡萄图像并标注,构建模型训练数据集;
训练模块,用于将模型训练数据集输入初始YOLO v4模型,对初始YOLO v4模型进行训练,得到改造后的YOLO v4模型;其中,所述初始YOLO v4模型采用简便线性变换操作替换原始YOLO v4模型中backbone中的部分卷积操作,并改造heads使其采用包括采摘点的坐标的数据输出格式;所述模型训练数据集中标注的标签格式如下:
待检测图像获取模块,用于获取待检测的葡萄图像;
目标计算模块,用于将所述待检测的葡萄图像输入改造后的YOLO v4模型,得到葡萄边框位置数据和采摘点的坐标;其中,采用改造后的YOLO v4模型中轻量化Backbone进行葡萄边框特征和采摘点特征提取,再通过neck进行加强特征,再通过heads进行特征解析,得到葡萄边框位置数据和采摘点的坐标;
其中,简便线性变换操作的公式如下:
改造heads输出解析后的模型预测结果,表示如下:
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210335650.6A CN114494441B (zh) | 2022-04-01 | 2022-04-01 | 基于深度学习的葡萄及其采摘点同步识别定位方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210335650.6A CN114494441B (zh) | 2022-04-01 | 2022-04-01 | 基于深度学习的葡萄及其采摘点同步识别定位方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114494441A true CN114494441A (zh) | 2022-05-13 |
CN114494441B CN114494441B (zh) | 2022-06-17 |
Family
ID=81487505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210335650.6A Active CN114494441B (zh) | 2022-04-01 | 2022-04-01 | 基于深度学习的葡萄及其采摘点同步识别定位方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114494441B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114846998A (zh) * | 2022-05-27 | 2022-08-05 | 云南农业大学 | 基于YOLOv4算法的双目机器人的番茄采摘方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107451602A (zh) * | 2017-07-06 | 2017-12-08 | 浙江工业大学 | 一种基于深度学习的果蔬检测方法 |
CN109105001A (zh) * | 2018-10-18 | 2019-01-01 | 石河子大学 | 一种香梨采摘机器人末端执行器及采摘方法 |
CN109409365A (zh) * | 2018-10-25 | 2019-03-01 | 江苏德劭信息科技有限公司 | 一种基于深度目标检测的待采摘水果识别和定位方法 |
CN110223349A (zh) * | 2019-05-05 | 2019-09-10 | 华南农业大学 | 一种采摘点定位方法 |
CN110226413A (zh) * | 2019-06-26 | 2019-09-13 | 佛山科学技术学院 | 一种机器人采摘多串堆叠葡萄的方法 |
CN111428712A (zh) * | 2020-03-19 | 2020-07-17 | 青岛农业大学 | 基于人工智能识别的名优茶采摘机及采摘机用识别方法 |
CN112270268A (zh) * | 2020-10-29 | 2021-01-26 | 重庆邮电大学 | 一种非结构化环境下基于深度学习的果实采摘机器人目标检测方法 |
CN112288008A (zh) * | 2020-10-29 | 2021-01-29 | 四川九洲电器集团有限责任公司 | 一种基于深度学习的马赛克多光谱图像伪装目标检测方法 |
CN113021355A (zh) * | 2021-03-31 | 2021-06-25 | 重庆正格技术创新服务有限公司 | 一种用于预测遮挡农作物摘取点的农业机器人作业方法 |
WO2021203172A1 (en) * | 2020-04-08 | 2021-10-14 | Ripe Robotics Pty Ltd | Produce picking device, system and method |
CN113674226A (zh) * | 2021-07-31 | 2021-11-19 | 河海大学 | 一种基于深度学习的采茶机茶叶芽尖检测方法 |
CN113743255A (zh) * | 2021-08-18 | 2021-12-03 | 广东机电职业技术学院 | 基于神经网络的儿童坐姿识别纠正方法及系统 |
-
2022
- 2022-04-01 CN CN202210335650.6A patent/CN114494441B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107451602A (zh) * | 2017-07-06 | 2017-12-08 | 浙江工业大学 | 一种基于深度学习的果蔬检测方法 |
CN109105001A (zh) * | 2018-10-18 | 2019-01-01 | 石河子大学 | 一种香梨采摘机器人末端执行器及采摘方法 |
CN109409365A (zh) * | 2018-10-25 | 2019-03-01 | 江苏德劭信息科技有限公司 | 一种基于深度目标检测的待采摘水果识别和定位方法 |
CN110223349A (zh) * | 2019-05-05 | 2019-09-10 | 华南农业大学 | 一种采摘点定位方法 |
CN110226413A (zh) * | 2019-06-26 | 2019-09-13 | 佛山科学技术学院 | 一种机器人采摘多串堆叠葡萄的方法 |
CN111428712A (zh) * | 2020-03-19 | 2020-07-17 | 青岛农业大学 | 基于人工智能识别的名优茶采摘机及采摘机用识别方法 |
WO2021203172A1 (en) * | 2020-04-08 | 2021-10-14 | Ripe Robotics Pty Ltd | Produce picking device, system and method |
CN112270268A (zh) * | 2020-10-29 | 2021-01-26 | 重庆邮电大学 | 一种非结构化环境下基于深度学习的果实采摘机器人目标检测方法 |
CN112288008A (zh) * | 2020-10-29 | 2021-01-29 | 四川九洲电器集团有限责任公司 | 一种基于深度学习的马赛克多光谱图像伪装目标检测方法 |
CN113021355A (zh) * | 2021-03-31 | 2021-06-25 | 重庆正格技术创新服务有限公司 | 一种用于预测遮挡农作物摘取点的农业机器人作业方法 |
CN113674226A (zh) * | 2021-07-31 | 2021-11-19 | 河海大学 | 一种基于深度学习的采茶机茶叶芽尖检测方法 |
CN113743255A (zh) * | 2021-08-18 | 2021-12-03 | 广东机电职业技术学院 | 基于神经网络的儿童坐姿识别纠正方法及系统 |
Non-Patent Citations (8)
Title |
---|
BIN YAN等: "A Real-Time Apple Targets Detection Method for Picking Robot Based on Improved YOLOv5", 《REMOTE SENSING》 * |
GUOXU LIU等: "YOLO-Tomato: A Robust Algorithm for Tomato Detection Based on YOLOv3", 《SENSORS》 * |
刘芳等: "基于改进型YOLO的复杂环境下番茄果实快速识别方法", 《农业机械学报》 * |
孙碧玉: "基于深度学习的番茄果实目标检测和番茄串采摘点定位技术研究", 《中国优秀硕士学位论文全文数据库 农业科技辑》 * |
张勤等: "基于RGB-D信息融合和目标检测的番茄串采摘点识别定位方法", 《农业工程学报》 * |
张星等: "基于改进YOLOv3的田间复杂环境下菠萝", 《中国农机化学报》 * |
李天华等: "基于YOLO v4+HSV的成熟期番茄识别方法", 《农业工程学报》 * |
罗陆锋等: "采摘机器人视觉定位及行为控制的硬件在环虚拟试验系统设计", 《农业工程学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114846998A (zh) * | 2022-05-27 | 2022-08-05 | 云南农业大学 | 基于YOLOv4算法的双目机器人的番茄采摘方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114494441B (zh) | 2022-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110533084B (zh) | 一种基于自注意力机制的多尺度目标检测方法 | |
CN109559320B (zh) | 基于空洞卷积深度神经网络实现视觉slam语义建图功能的方法及系统 | |
CN112132093B (zh) | 高分辨率遥感图像目标检测方法、装置和计算机设备 | |
CN110781756A (zh) | 基于遥感图像的城市道路提取方法及装置 | |
CN111783772A (zh) | 一种基于RP-ResNet网络的抓取检测方法 | |
CN112750148B (zh) | 一种基于孪生网络的多尺度目标感知跟踪方法 | |
CN110991444B (zh) | 面向复杂场景的车牌识别方法及装置 | |
CN113657560B (zh) | 基于节点分类的弱监督图像语义分割方法及系统 | |
CN112419202B (zh) | 基于大数据及深度学习的野生动物图像自动识别系统 | |
CN110008853B (zh) | 行人检测网络及模型训练方法、检测方法、介质、设备 | |
CN111462120A (zh) | 一种基于语义分割模型缺陷检测方法、装置、介质及设备 | |
CN110610210B (zh) | 一种多目标检测方法 | |
CN112381061B (zh) | 一种面部表情识别方法及系统 | |
CN111091101A (zh) | 基于一步法的高精度行人检测方法、系统、装置 | |
CN111753682A (zh) | 一种基于目标检测算法的吊装区域动态监控方法 | |
CN113592060A (zh) | 一种神经网络优化方法以及装置 | |
CN112836820B (zh) | 用于图像分类任务的深度卷积网络训练方法、装置及系统 | |
CN115797929A (zh) | 基于双注意力机制的小型农田图像分割方法、装置 | |
CN114092487A (zh) | 目标果实实例分割方法及系统 | |
CN109345559B (zh) | 基于样本扩充和深度分类网络的运动目标跟踪方法 | |
CN113298032A (zh) | 基于深度学习的无人机视角图像的车辆目标检测方法 | |
CN114494441B (zh) | 基于深度学习的葡萄及其采摘点同步识别定位方法、装置 | |
CN110334775B (zh) | 一种基于宽度学习的无人机线路故障识别方法和装置 | |
CN111444923A (zh) | 自然场景下图像语义分割方法和装置 | |
CN113869262A (zh) | 一种基于Unet模型的目标区域用地信息的预测方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |