CN115457437A - 作物识别方法、装置、系统及农药喷施机器人 - Google Patents
作物识别方法、装置、系统及农药喷施机器人 Download PDFInfo
- Publication number
- CN115457437A CN115457437A CN202211062857.7A CN202211062857A CN115457437A CN 115457437 A CN115457437 A CN 115457437A CN 202211062857 A CN202211062857 A CN 202211062857A CN 115457437 A CN115457437 A CN 115457437A
- Authority
- CN
- China
- Prior art keywords
- crop
- image
- current frame
- identification
- frame image
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01M—CATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
- A01M7/00—Special adaptations or arrangements of liquid-spraying apparatus for purposes covered by this subclass
- A01M7/0089—Regulating or controlling systems
-
- 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
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Insects & Arthropods (AREA)
- Pest Control & Pesticides (AREA)
- Wood Science & Technology (AREA)
- Zoology (AREA)
- Environmental Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种作物识别方法、装置、系统及农药喷施机器人,该方法包括:将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果;基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,获得当前帧图像的识别结果;基于同一作物目标在上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;图像由移动中的图像采集设备采集;当前帧图像的预测结果基于上一帧图像的识别结果确定。本发明提供的作物识别方法、装置、系统及农药喷施机器人,能在移动场景下对作物进行更准确的实时识别,能提高作物识别的鲁棒性,能为对靶施药提供数据支撑。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种作物识别方法、装置、系统及农药喷施机器人。
背景技术
病虫害对作物的产量和质量的影响较大,现有技术中对病虫害的防治,通常通过对作物进行农药喷施的方式实现。
在作物的生长早期,病虫害对作物的生长威胁更加凸显,导致在作物的生长早期对喷施农药的需求更大。但是,由于作物生长早期的植株较小,导致作物之间的间距较大,若对作物进行无靶标的均一化连续施药,会导致农药的过度使用,投入成本较高,并且会造成空气、土壤以及地下水等的污染。因此,准确的识别作物,并将识别到的作物作为靶标进行对靶施药,可以提高农药利用率,有效降低成本投入,并可以减少对空气、土壤以及地下水等的污染。
传统的作物识别方法可以基于机器视觉技术,对作物进行识别。但是,由于田间光照环境复杂、杂草与作物相似,且实现对靶施药需要在移动场景下对作物进行实时识别,导致基于传统的作物识别方法进行作物识别的准确率不高。因此,如何更准确的识别作物是本领域亟待解决的技术问题。
发明内容
本发明提供一种作物识别方法、装置、系统及农药喷施机器人,用以解决现有技术中作物识别的准确率不高的缺陷,实现更准确的识别作物。
本发明提供一种作物识别方法,包括:
获取当前帧图像;
将所述当前帧图像输入作物识别模型,获取所述作物识别模型输出的当前帧图像的原始识别结果;
基于当前帧图像的预测结果,修正所述当前帧图像的原始识别结果,获得所述当前帧图像的识别结果;
关联上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;
其中,所述图像由移动中的图像采集设备采集;所述当前帧图像的预测结果基于上一帧图像的识别结果确定;所述作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
根据本发明提供的一种作物识别方法,所述作物识别模型,包括:特征提取模块、特征融合模块和作物识别模块;
所述特征提取模块包括多个级联的神经网络单元;
所述特征融合模块基于PANet网络构建,包括多个级联的所述神经网络单元;
所述神经网络单元为Transformer单元、DWConv单元、SPFF单元、Upsample单元和concat单元中的任意一种;
所述Transformer单元基于Transformer网络构建;
所述DWConv单元用于对输入的图像进行深度卷积、归一化处理和激活函数计算;
SPFF单元用于将不同尺寸的输入图像进行特征融合;
Upsample单元用于对输入图像进行上采样;
concat单元用于对输入图像进行concat函数计算。
根据本发明提供的一种作物识别方法,所述关联上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的同一作物目标,包括:
基于与所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果相对应的交并比值,关联所述上一帧图像的识别结果和所述当前帧图像的识别结果中的同一作物目标。
根据本发明提供的一种作物识别方法,所述基于当前帧图像的预测结果,修正所述当前帧图像的原始识别结果,还包括:
关联所述当前帧图像的预测结果和所述当前帧图像的原始识别结果中的同一作物目标;
基于同一作物目标在所述当前帧图像的预测结果和所述当前帧图像的原始识别结果中的相对位置关系,修正同一作物目标在所述当前帧图像的原始识别结果中的位置;
在所述当前帧图像的预测结果中存在未关联的作物目标的情况下,基于目标参数,在所述当前帧图像的原始识别结果中添加所述未关联的作物目标;
其中,所述目标参数包括当前帧与上一帧之间的间隔时长以及所述图像采集设备的移动速度。
根据本发明提供的一种作物识别方法,所述基于同一作物目标在所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的相对位置关系,输出所述同一作物目标的位置信息,包括:
基于同一作物目标在所述上一帧图像的识别结果中的位置信息,在所述当前帧图像的识别结果中添加同一作物目标的映射对象;
在同一作物目标的映射对象对应的基准点和同一作物目标对应的基准点之间的连线,与所述当前帧图像的识别结果中的预设基准线相交的情况下,输出同一作物目标的空间位置信息;
其中,同一作物目标的映射对象对应的基准点,为用于标注所述映射对象的标注框上边界的中点;同一作物目标对应的基准点,为用于标注同一作物目标的标注框上边界的中点。
根据本发明提供的一种作物识别方法,所述样本图像是基于如下方式获取的:
获取原始样本图像;
在部分原始样本图像中添加运动模糊,并将添加运动模糊后的原始样本图像以及未添加运动模糊的原始样本图像,作为待处理样本图像;
对所述待处理样本图像进行图像处理,并将经过图像处理后的待处理样本图像作为所述样本图像。
本发明还提供一种作物识别装置,包括:
图像获取模块,用于获取当前帧图像;
作物识别模块,用于将所述当前帧图像输入作物识别模型,获取所述作物识别模型输出的当前帧图像的原始识别结果;
结果修正模块,用于基于当前帧图像的预测结果,修正所述当前帧图像的原始识别结果,获得所述当前帧图像的识别结果;
结果输出模块,用于关联上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;
其中,所述图像由移动中的图像采集设备采集;所述当前帧图像的预测结果基于上一帧图像的识别结果确定;所述作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
本发明还提供一种作物识别系统,包括:作物识别处理器;还包括存储器及存储在所述存储器上并可在所述作物识别处理器上运行的程序或指令,所述程序或指令被所述作物识别处理器执行时执行如上任一项所述的作物识别方法。
根据本发明提供的一种作物识别系统,还包括:图像采集设备、显示设备以及电源;所述图像采集设备、所述显示设备与所述电源分别与所述作物识别处理器连接;
所述图像采集设备用于在移动中实时采集种植于目标区域内的目标作物的视频流,并将所述视频流至所述作物识别处理器,以供所述作物识别处理器基于所述视频流获取当前帧图像;
所述显示设备用于接收并显示所述作物识别处理器发送的作物目标的空间位置信息。
本发明还提供一种农药喷施机器人,包括:如上所述的作物识别系统、农药喷施系统以及驱动系统;所述农药喷施系统分别与所述作物识别系统和所述驱动系统连接;
所述农药喷施系统和所述作物识别系统可在所述驱动系统的驱动下移动;
所述农药喷施系统可基于所述作物识别系统发送的作物目标的空间位置信息,对所述作物目标进行对靶施药。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述作物识别方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述作物识别方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述作物识别方法。
本发明提供的作物识别方法、装置、系统及农药喷施机器人,通过基于作物识别模型,获取当前帧图像的原始识别结果,基于当前帧图像的预测结果,对当前帧图像的原始识别结果进行修正,获得当前帧图像的识别结果,基于上一帧图像的识别结果和当前帧图像的识别结果中同一作物目标的相对位置关系,输出同一作物目标的空间位置信息,能在移动场景下对作物进行更准确的实时识别,能提高作物识别的鲁棒性,能为对靶施药提供数据支撑。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的作物识别方法的流程示意图;
图2为本发明提供的作物识别方法中作物识别模型的结构示意图;
图3为SiLU函数的数据示意图;
图4为本发明提供的作物识别方法中上一帧图像的识别结果的示意图;
图5为本发明提供的作物识别方法中添加映射对象后当前帧图像的识别结果的示意图;
图6是本发明提供的作物识别装置的结构示意图;
图7为本发明提供的作物识别系统的结构示意图;
图8为基于本发明提供的农药喷施机器人进行对靶施药的流程示意图;
图9是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
需要说明的是,我国一般年份病虫害的发生面积超过4亿公顷,若不进行防治则将有超过25%以上的作物损失。而研究表明,在对作物进行均一化连续施药的情况下,喷施于大田中的农药仅有30%左右附着于作物上,剩余70%左右的农药将沉积于土壤、地下水以及扩散至空气中,从而产生空气、土壤和地下水污染等环境影响。
无靶标的均一化连续施药是造成农药利用率低的主要原因,进行有靶标的对靶施药,可以有效提高农药利用率,降低成本投入,并可以减少对空气、土壤以及地下水等的污染。而进行有靶标的对靶施药的前提是对作物的精准识别。传统的作物识别方法通常基于机器视觉技术实现作物的识别。机器视觉技术可根据图像处理方式分为传统机器学习方法和基于深度学习的图像处理方法。
但是,由于田间光照环境复杂且杂草与作物相似,而传统机器学习方法通常采用人工提取特征的方式,导致基于传统机器学习方法进行作物识别的准确率不高。基于深度学习的图像处理方法虽然能自动提取作物特征,且提取特征的数量较多,使得基于深度学习的图像处理方法在识别准确率方面远高于传统机器学习方法,但由于基于深度学习的图像处理方法中的模型参数量较多,识别过程中的计算量较大,导致基于深度学习的图像处理方法的作物识别速度较慢,对硬件的算力要求较高。
进行有靶标的对靶施药,一方面需要在嵌入式移动端设备上进行实时的作物识别,从而使得农药喷施设备可以基于嵌入式移动端设备实时获取的作物识别结果,进行有靶标的对靶施药。但通常情况下嵌入式移动端设备的算力较低,难以执行较为复杂的计算。
另一方面,在嵌入式移动端设备移动的过程中,由于嵌入式移动端设备的驱动装置产生的振动会引起搭载相机的振动,或由于地面不平引起的搭载相机的晃动等,会造成搭载相机产生模糊,进而导致作物识别的准确性和鲁棒性较低。
对此,本发明提供一种作物识别方法、装置、系统及农药喷施机器人。基于本发明提供的作物识别方法,基于YOLOv5n构建作物识别模型,并在作物识别模型中融合Transfomer网络和PANet网络,提高了作物识别模型对作物目标的识别准确率,减少作物识别模型的结构参数量,从而可以有效提高作物识别模型的识别速度,通过卡尔曼滤波和匈牙利算法对作物目标进行跟踪,建立了不同帧图像中同一作物目标之间的联系,使得图像中的任一作物目标有且只有一个输出结果,通过计算作物运动距离,补偿作物在漏识别的情况下,跟踪准确率低的问题。本发明提供的作物识别方法具有更好的鲁棒性,可以适应不同光照、不同速度下的作物在线识别,有利于精准农业和智能化农业的发展。
图1是本发明提供的作物识别方法的流程示意图。下面结合图1描述本发明的作物识别方法。如图1所示,该方法包括:步骤101、获取当前帧图像;图像由移动中的图像采集设备采集。
需要说明的是,本发明实施例的执行主体为作物识别装置。
具体地,图像采集设备可以按照预设路线在目标区域内移动,并可以在移动中实时采集种植于目标区域内的目标作物的视频流,作为目标视频流。
本发明实施例中采用视频流的方式获取种植于目标区域内的目标作物信息,可以避免因漏拍而产生的作物信息丢失问题。
需要说明的是,目标区域为待喷施农药的区域,目标区域可以根据实际情况确定,例如:目标区域可以为露天种植的大田区域,目标区域还可以为温室区域。本发明实施例中对目标区域不作具体限定。
预设路线为对种植于目标区域内的目标作物喷施农药的路线,预设路线可以根据先验知识和/或实际情况确定。本发明实施例中对预设路线不作具体限定。
本发明实施例中的目标作物可以为小麦、油菜、水稻、玉米等作物。以下以目标作物为甘蓝为例,说明本发明提供的作物识别方法。
图像采集设备可以将采集到的目标视频流发送至作物识别装置。
作物识别装置接收到图像采集设备发送的目标视频流之后,可以对上述目标视频流进行抽帧处理,进而可以获取当前帧图像。
步骤102、将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果。
作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
具体地,获取当前帧图像之后,可以将当前帧图像输入作物识别模型。
作物识别模型可以对当前帧图像中的甘蓝进行识别,并通过标注框对识别到的甘蓝进行标注,进而将标注后的当前帧图像作为当前帧图像的原始识别结果输出。
可选地,作物识别模型在通过标注框对识别到的甘蓝进行标注的同时,还可以为识别到的甘蓝标注身份标识,进而将标注后的当前帧图像作为当前帧图像的原始识别结果输出。
可选地,作物识别模型可以基于如下方式训练得到。
图像采集设备可以在不同拍摄条件下,获取不同生长周期的样本作物的图像,作为原始样本图像。其中,拍摄条件,可以包括但不限光照条件和杂草密度等。
需要说明的是,目标作物与样本作物的种类相同,本发明实施例中样本作物亦为甘蓝。
目标区域与样本区域可以相同或不同。样本区域可以根据先验知识和/或实际情况确定。本发明实施例中对样本区域不作具体限定。
获得原始样本图像之后,可以将上述原始样本图像直接作为样本图像,还可以对上述原始样本图像进行图像处理之后,将经过图像处理后的原始样本图像,作为样本图像。
基于上述各实施例的内容,样本图像是基于如下方式获取的:获取原始样本图像。
在部分原始样本图像中添加运动模糊,并将添加运动模糊后的原始样本图像以及未添加运动模糊的原始样本图像,作为待处理样本图像。
对待处理样本图像进行图像处理,并将经过图像处理后的待处理样本图像作为样本图像。
可选地,获得原始样本图像之后,可以随机将原始样本图像分为两部分。可以将一部分原始样本图像直接作为待处理样本图像,在另一部分原始样本图像中添加运动模糊,并可以将添加运动模糊后的原始样本图像也作为待处理样本图像。
可选地,本发明实施例中可以采用Opencv 4.0库的cv2.filter2D()函数对另一部分原始样本图像添加运动模糊,模糊核矩阵可以使用getRotationMatrix2D()函数生成。
获取待处理样本图像之后,可以按照8:1:1的比例,将待处理样本图像划分为训练集、测试集和验证集。
对于上述训练集中的每一待处理样本图像,可以对上述待处理样本图像进行图像处理,并可以将图像处理后的待处理样本图像,作为样本图像。
需要说明的是,本发明实施例中的图像处理可以包括但不限于图像裁剪、图像缩放、随机增强、随机翻转以及剔除过明、过暗的图像等。
可选地,发明实施例中的图像处理包括将待处理样本图像等比例缩放至640×480(像素)。
获取样本图像之后,可以用标注框对样本图像中的甘蓝进行标注。
可选地,用标注框标注样本图像中的甘蓝之后,还可以统计上述样本图像中标注框的宽和高,剔除小于2个像素值的边界框,还可以对上述样本图像中的标注框使用K-means聚类,得到n个先验标注框(n为大于1的正整数),使用遗传算法随机对上述先验标注框的高和宽进行变异,可以得到适应效果最优的9个先验标注框,并可以将上述包括9个先验标注框的样本图像,作为样本图像的原始识别结果。
获取样本图像以及样本图像的原始识别结果之后,可以以样本图像为样本,以样本图像的原始识别结果为样本标签,对作物识别模型进行训练,进而可以获得训练好的作物识别模型。
本发明实施例中在样本图像中添加运动模糊,能提高训练好的作物识别模型在移动场景下进行作物识别的准确率,能提高移动作物识别模型的鲁棒性,能增大作物识别模型的适用范围。
基于上述各实施例的内容,作物识别模型,以YOLOV5n为基础框架,基于机器翻译Transformer网络和路径聚合PANet网络构建。
需要说明的是,YOLO(You Only Look Once)是一种基于深度神经网络的对象识别和定位算法,YOLO具体运行速度快、适用于实时运算等特点。YOLOv5算法作为最新的YOLO算法,相较于YOLOv3算法和YOLOv4算法,YOLOv5算法的网络结构更小、计算速度更快和计算准确度更高,并且YOLOv5算法中的权重文件较小,使得基于YOLOv5算法构建的模型可以搭载于配置相对较低的移动设备上。
Transformer网络是一种基于自注意力机制的神经网络架构,Transformer网络的性能优于循环与卷积神经网络,具有更高的翻译质量和更少的训练算力,更适合现代机器学习硬件,并且把训练速度提升了一个数量级。
路径聚合(Path Aggregation Network,PANet)网络是一种基于提议的实例分割框架下神经网络架构,通过自底向上的路径增强,利用准确的底层定位信号增强整个特征层次,缩短了低层与顶层特征之间的信息路径。
本发明实施例中以YOLOv5为基础框架,基于Transformer网络和PANet网络构建作物识别模型,首先,可以简化作物识别模型的网络结构,进而可以减少作物识别模型中的模型参数,提供作物识别模型的计算速度和计算准确度;其次,可以提高作物识别模型对光线不佳的情况下获取到的图像的识别准确率,从而能提高作物识别模型的鲁棒性;最后,基于YOLOv5构建得到的作物识别模型的权重文件更小,使得作物识别模型可以搭载于配置相对较低的嵌入式移动端设备上,从而可以提高作物识别模型的可用性,实现端到端的实时在线检测。
相应地,在基于样本图像和样本图像的原始识别结果对作物识别模型进行训练时,可以使用YOLOv5n在IMAGENET上训练的权重作为部分参数的初始值,其他参数使用随机值进行训练,使用SGD优化器对作物识别模型的网络参数进行优化,SGD优化的参数值分别为:学习率:0.001,动量:0.843,学习率衰减率:0.0036,训练迭代次数为500次,每迭代一次更新一次模型权重,使用测试集数据对模型性能进行测试,保存识别准确率最高的模型权重作为训练好的作物识别模型的权重。
图2为本发明提供的作物识别方法中作物识别模型的结构示意图,如图2所示,作物识别模型包括:特征提取模块201、特征融合模块202和作物识别模块203。
其中,特征提取模块201为Backbone模块,特征融合模块202为Neck模块,作物识别模块203为Prediction模块。
特征提取模块201包括多个级联的神经网络单元;
特征融合模块202基于PANet网络构建,包括多个级联的神经网络单元
神经网络单元为Transformer单元、DWConv单元、SPFF单元、Upsample单元和concat单元中的任意一种;
Transformer单元基于Transformer网络构建;
DWConv单元用于对输入的图像进行深度卷积、归一化处理和激活函数计算;
SPFF单元用于将不同尺寸的输入图像进行特征融合;
Upsample单元用于对输入图像进行上采样;
concat单元用于对输入图像进行concat函数计算。
相应地,将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果,包括:将当前帧图像输入特征提取模块201,将特征提取模块201输出的第一特征图、第二特征图和第三特征图输入特征融合模块202,将特征融合模块202输出的第一特征矩阵、第二特征矩阵和第三特征矩阵输入作物识别模块203,获取作物识别模块203输出的当前帧图像的原始识别结果。
具体地,特征提取模块201和特征融合模块202可以分别由多个神经网络单元级联构成,并且当前神经网络单元的输入为上一个神经网络单元的输出,或者为上一个神经网络单元以及上N个神经网络单元的输出。其中,N为大于1的正整数。
为了提高作物模型对作物的识别准确率,增强特征图中的语义信息,并在提高作物识别模型的识别准确率的基础上,减少模型参数,上述神经网络单元可以包括Transformer单元。上述Transformer单元可以基于Transformer网络对输入图像进行特征提取。
为了提高作物模型的实时性,上述神经网络单元还可以包括DWConv单元。上述DWConv单元可以包括级联的二级卷积层、归一化层和激活函数层,上述DWConv单元可以用于对输入的图像进行深度卷积、归一化处理和激活函数计算。上述激活函数层采用的激活函数为SiLU函数。图3为SiLU函数的数据示意图,SiLU函数可以通过如下公式表示:
SiLU(x)=x*sigmoid(x)
上述神经网络单元还可以包括SPFF单元、Upsample单元和concat单元。SPFF单元可以用于对不同尺寸的输入图像进行特征融合,丰富了输出图像的表达能力,有利于检测不同生长周期大小差异较大的目标;Upsample单元可以用于对输入图像进行上采样;concat单元可以用于对输入图像进行concat函数计算。
可选地,特征提取模块201可以由至少三个DWConv单元、至少三个Transformer单元和至少一个SPFF单元级联构成,且任意两个Transformer单元不相邻,SPFF单元为特征提取模块201中的最后一个单元。
需要说明的是,本发明实施例中对特征提取模块201中DWConv单元、Transformer单元和SPFF单元的数量和级联方式可以根据先验知识确定,本发明实施例中对特征提取模块201中DWConv单元、Transformer单元和SPFF单元的数量和级联方式不作具体限定。
可选地,特征融合模块202可以采用PANet结构,用于生成特征金字塔,从而可以增强作物识别模型对不同尺寸的目标作物的识别,可以进一步提高作物识别模型的识别准确率。特征融合模块202可以由至少三个DWConv单元、至少三个Transformer单元、多个concat单元和Upsample单元级联构成,且任意两个Transformer单元不相邻。
需要说明的是,本发明实施例中对特征融合模块202中DWConv单元、Transformer单元、concat单元和Upsample单元的数量和级联方式可以根据先验知识确定,本发明实施例中对特征融合模块202中DWConv单元、Transformer单元、concat单元和Upsample单元的数量和级联方式不作具体限定。
为了便于对本发明实施例中的作物识别模型的理解,以下通过一个实例说明本发明实施例中的作物识别模型。作物识别模型中各神经网络单元的连接关系如表1和图2所示,作物识别模型的模型参数如表1所示。
其中,表1中Transfomer单元209的备注“重复3次”,表示在作物识别模型中包括3个级联的Transfomer单元209;表1中Transfomer单元211的备注“重复6次”,表示在作物识别模型中包括6个级联的Transfomer单元211。
表1作物识别模型结构关系和模型参数表
表1中Concat单元217的备注“211、216”,表示Concat单元217的输入为Transfomer单元211和Upsample单元216的输出;表1中Concat单元221的备注“209、220”,表示Concat单元221的输入为Transfomer单元209和Upsample单元220的输出。
将当前帧图像输入特征提取模块201之后,特征提取模块201可以对当前帧图像进行作物特征提取,特征提取模块201中的Transformer单元209可以输出第一特征图至特征融合模块202中的Concat单元221;特征提取模块201中的Transformer单元211可以输出第二特征图至特征融合模块202中的Concat单元217;特征提取模块201中的SPFF单元214可以输出第三特征图至特征融合模块202中的DWConv单元。
特征融合模块202中的Transformer单元222可以输出第一特征矩阵至作物识别模块203中的nms单元229,特征融合模块202中的Transformer单元225可以输出第二特征矩阵至nms单元229,特征融合模块208中的Transformer单元228可以输出第三特征矩阵至nms单元229。其中,第一特征矩阵的尺寸为80×60×18(像素值)、第二特征矩阵的尺寸为40×30×18(像素值)、第二特征矩阵的尺寸为20×15×18(像素值)。
nms单元229可以基于第一特征矩阵、第二特征矩阵和第三特征矩阵,采用非极大值抑制((Non-Maximum Suppression,NMS)进行目标作物的识别,并可以通过标注框在当前帧图像中标注识别到的目标作物,进而将标注后的当前帧图像作为当前帧图像的原始识别结果输出。
步骤103、基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,获得当前帧图像的识别结果。
其中,当前帧图像的预测结果基于上一帧图像的识别结果确定。
具体地,由于本发明实施例中的任意一帧图像是由移动中的图像采集设备采集的,因此某一甘蓝在上一帧图像中的位置,相对于在当前帧图像中的位置会发生改变。
在获取到上一帧图像的识别结果之后,可以基于上一帧图像的识别结果中识别到的甘蓝的位置信息,预测上述甘蓝在当前帧图像中的位置,获取上述甘蓝在当前帧图像中的预测位置信息,进而可以基于上述甘蓝在当前帧图像中的预测位置信息,在当前帧图像中添加上述甘蓝以及用于标注上述甘蓝的标注框,并将添加有上述甘蓝以及用于标注上述甘蓝的标注框的当前帧图像,作为当前帧图像的预测结果。
可选地,可以用上一帧图像的识别结果中标注框的位置信息,表示上一帧图像的识别结果中识别到的甘蓝的位置信息。
相应地,可以基于上一帧图像的识别结果中标注框的位置信息,预测上述标注框在当前帧图像中的位置,获取上述标注框在当前帧图像中的预测位置信息,进而可以基于上述标注框在当前帧图像中的预测位置信息,在当前帧图像中添加上述标注框,并将添加有上述标注框的当前帧图像,作为当前帧图像的预测结果。
基于上述各实施例的内容,当前帧图像的预测结果是基于上一帧图像的识别结果,采用卡尔曼滤波算法预测得到的。
需要说明的是,卡尔曼滤波(Kalman filtering)算法是一种利用线性系统状态方程,基于输入的观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。
可选地,本发明实施例中可以基于上一帧图像的识别结果中标注框的位置信息,采用卡尔曼滤波算法,预测上述标注框在当前帧图像中的位置,获取上述标注框在当前帧图像中的预测位置信息,进而可以基于上述标注框在当前帧图像中的预测位置信息,在当前帧图像中添加上述标注框,并将添加有上述标注框的当前帧图像,作为当前帧图像的预测结果。
基于上述各实施例的内容,基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,包括:关联当前帧图像的预测结果和当前图像的原始识别结果中的同一作物目标。
需要说明的是,本发明实施例中作物识别模型输出的当前帧图像的原始识别结果,携带有识别到的甘蓝的身份标识。
可以理解的是,上一帧图像的原始识别结果亦是基于作物识别模型获取的,因此上一帧图像的原始识别结果中亦可以携带有识别到的甘蓝的身份标识。
上一帧图像的识别结果基于上一帧图像的原始识别结果获得,因此上一帧图像的识别结果亦可以携带有识别到的甘蓝的身份标识。
基于上一帧图像的识别结果,对上一帧图像的识别结果中识别到的甘蓝在当前帧图像的位置进行预测,获得的当前帧图像的预测结果亦可以携带有上述甘蓝的身份标识。
因此,基于当前帧图像的预测结果中携带的甘蓝的身份标识,和当前帧图像的原始识别结果中携带的甘蓝的身份标识,可以对当前帧图像的预测结果中和当前帧图像的原始识别结果中的同一甘蓝进行关联。
基于同一作物目标在当前帧图像的预测结果和当前帧图像的原始识别结果中的相对位置关系,修正同一作物目标在当前帧图像的原始识别结果中的位置。
具体地,将当前帧图像的预测结果和当前帧图像的原始识别结果中的同一甘蓝进行关联之后,可以基于上述同一甘蓝在当前帧图像的预测结果和当前帧图像的原始识别结果中的相对位置关系,通过数值计算的方式,修正上述同一甘蓝在当前帧图像的原始识别结果中的位置。
例如:对于当前帧图像的预测结果和当前帧图像的原始识别结果中的任一甘蓝,可以将该甘蓝在当前帧图像的原始识别结果中的位置,修正至该甘蓝在当前帧图像的预测结果中的位置和在当前帧图像的原始识别结果中的位置之间的中间值。
可以理解的是,修正上该甘蓝在当前帧图像的原始识别结果中的位置的同时,用于标注该甘蓝的标注框的位置相应改变。
在当前帧图像的预测结果中存在未关联的作物目标的情况下,基于目标参数,在当前帧图像的原始识别结果中添加未关联的作物目标。
其中,目标参数包括当前帧与上一帧之间的间隔时长以及图像采集设备的移动速度。
可以理解的是,当前帧图像中的甘蓝可以由于光照、拍摄角度或遮挡等原因,造成基于作物识别模型获得的当前帧图像的原始识别结果出现漏识别。
因此,将当前帧图像的预测结果和当前帧图像的原始识别结果中的同一甘蓝进行关联之后,若当前帧图像的预测结果中还存在未关联的甘蓝,则可以基于当前帧与上一帧之间的间隔时长以及图像采集设备的移动速度,通过数值计算的方式,计算得到上述未关联的甘蓝在当前帧图像的原始识别结果中的位置信息,并可以基于上述位置信息,在当前帧图像的原始识别结果中添加上述未关联的甘蓝。
可以理解的是,在当前帧图像的原始识别结果中添加上述未关联的甘蓝的同时,还可以通过标注框标注上述未关联的甘蓝。
本发明实施例通过基于同一作物目标在当前帧图像的预测结果和当前帧图像的原始识别结果中的相对位置关系,修正同一作物目标在当前帧图像的原始识别结果中的位置,并在当前帧图像的预测结果中存在未关联的作物目标的情况下,基于目标参数,在当前帧图像的原始识别结果中添加未关联的作物目标,能解决因作物目标漏检测而造成的跟踪识别精度降低的问题,能进一步提高作物识别的准确率。
步骤104、关联上一帧图像的识别结果和当前帧图像的识别结果中的同一作物目标,基于同一作物目标在上一帧图像的识别结果和当前帧图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息。
具体地,获取当前帧图像的识别结果之后,可以通过多种方式关联上一帧图像的识别结果和当前帧图像的识别结果中的同一甘蓝,例如:可以基于上一帧图像的识别结果中携带的甘蓝的身份标识和当前帧图像的识别结果中携带的甘蓝的身份标识,关联上一帧图像的识别结果和当前帧图像的识别结果中的同一甘蓝;或者,还可以基于各类算法,关联上一帧图像的识别结果和当前帧图像的识别结果中的同一甘蓝。
基于上述各实施例的内容,关联上一帧图像的识别结果和当前帧图像的识别结果中的同一作物目标,包括:基于与上一帧待识别图像的识别结果和当前帧待识别图像的识别结果相对应的交并比值,关联上一帧图像的识别结果与当前帧图像的识别结果中的同一作物目标。
需要说明的是,匈牙利算法(Hungarian algorithm)是一种在多项式时间内求解任务分配问题的组合优化算法,主要用于求解二分图的最大匹配数和最小点覆盖数。
可选地,本发明实施例中可以基于匈牙利算法,获取与上一帧待识别图像的识别结果和当前帧待识别图像的识别结果相对应的交并比值,进而可以基于上述交互比值,关联上一帧图像的识别结果与当前帧图像的识别结果中的同一甘蓝。
具体地,关联上一帧图像的识别结果和当前帧图像的识别结果中的同一甘蓝之后,可以基于上述同一甘蓝在上一帧图像的识别结果和当前帧图像的识别结果中的相对位置关系进行条件判断,并可以基于条件判断结果,确定是否获取并输出上述同一甘蓝的空间位置信息。
可选地,可以基于图像采集设备的空间位置以及图像采集设备获取图像的焦距等参数,获取上述同一甘蓝的空间位置信息。
基于上述各实施例的内容,基于同一作物目标在上一帧图像的识别结果和当前帧图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息,包括:基于同一作物目标在上一帧图像的识别结果中的位置信息,在当前帧图像的识别结果中添加同一作物目标的映射对象。
可选地,图4为本发明提供的作物识别方法中上一帧图像的识别结果的示意图。图5为本发明提供的作物识别方法中添加映射对象后当前帧图像的识别结果的示意图。如图4和图5所示,基于任一甘蓝在上一帧图像的识别结果中的位置信息,可以将该甘蓝映射至当前帧图像的识别结果中,即在当前帧图像的识别结果中添加该甘蓝的映射对象。
可以理解的是,在当前帧图像的识别结果中添加该甘蓝的映射对象的同时,还可以通过标注框标注该甘蓝的映射对象。
在同一作物目标的映射对象对应的基准点与同一作物目标对应的基准点之间的连线,与当前帧图像的识别结果中的预设基准线相交的情况下,输出同一作物目标的空间位置信息。
其中,同一作物目标的映射对象对应的基准点,为用于标注映射对象的标注框上边界的中点;同一作物目标对应的基准点,为用于标注同一作物目标的标注框上边界的中点。
具体地,如图5所示,在当前帧图像的识别结果中添加同一甘蓝的映射对象之后,可以将用于标注同一甘蓝的映射对象的标注框上边界的中点,作为同一甘蓝的映射对象对应的基准点,还可以将用于标注同一甘蓝的标注框上边界的中点,作为同一甘蓝的作物目标的基准点。
需要说明的是,本发明实施例中可以根据实际情况和/或先验知识,确定任一帧图像的预设基准线,例如:如图4和图5所示,可以将任一帧图像在水平方向上的中线,作为图像的预设基准线,则任一帧图像在水平方向上的中线,即为该帧图像的预设基准线。相应地,任一帧图像的识别结果中可以包括预设基准线。
在同一甘蓝的映射对象对应的基准点与同一甘蓝对应的基准点的连线,与当前帧图像的识别结果中的预设基准线相交的情况下,可以获取并输出同一甘蓝的空间位置信息。
本发明实施例通过基于作物识别模型,获取当前帧图像的原始识别结果,基于当前帧图像的预测结果,对当前帧图像的原始识别结果进行修正,获得当前帧图像的识别结果,基于上一帧图像的识别结果和当前帧图像的识别结果中同一作物目标的相对位置关系,输出同一作物目标的空间位置信息,能在移动场景下对作物进行更准确的实时识别,能提高作物识别的鲁棒性,能为对靶施药提供数据支撑。
图6是本发明提供的作物识别装置的结构示意图。下面结合图6对本发明提供的作物识别装置进行描述,下文描述的作物识别装置与上文描述的本发明提供的作物识别方法可相互对应参照。如图6所示,该装置包括:图像获取模块601、作物识别模块602、结果修正模块603和结果输出模块604。
图像获取模块601,用于获取当前帧图像。
作物识别模块602,用于将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果。
结果修正模块603,用于基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,获得当前帧图像的识别结果。
结果输出模块604,用于关联上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息。
其中,图像由移动中的图像采集设备采集;当前帧图像的预测结果基于上一帧图像的识别结果确定;作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
具体地,图像获取模块601、作物识别模块602、结果修正模块603和结果输出模块604电连接。
本发明实施例中的作物识别装置,通过基于作物识别模型,获取当前帧图像的原始识别结果,基于当前帧图像的预测结果,对当前帧图像的原始识别结果进行修正,获得当前帧图像的识别结果,基于上一帧图像的识别结果和当前帧图像的识别结果中同一作物目标的相对位置关系,输出同一作物目标的空间位置信息,能在移动场景下对作物进行更准确的实时识别,能提高作物识别的鲁棒性,能为对靶施药提供数据支撑。
基于上述各实施例的内容,一种作物识别系统,包括:作物识别处理器;还包括存储器及存储在存储器上并可在作物识别处理器上运行的程序或指令,程序或指令被作物识别处理器执行时执行如上的作物识别方法。
图7为本发明提供的作物识别系统的结构示意图。如图7所示,作物识别系统包括作物识别处理器701。
需要说明的是,作物识别处理器执行上述作物识别方法的具体过程可以参见上述各实施例的内容,本发明实施例中不再赘述。
可选地,上述作物识别处理器可以为功率为15W的NVIDIA Jeston Xavier NX开发板,实现在无外接电源的田间长时间工作。上述作物识别处理器可以基于Pytorch 17框架执行上述作物识别方法。
本发明实施例中的作物识别系统,通过作物识别处理器,获取当前帧图像的原始识别结果,基于当前帧图像的预测结果,对当前帧图像的原始识别结果进行修正,获得当前帧图像的识别结果,基于上一帧图像的识别结果和当前帧图像的识别结果中同一作物目标的相对位置关系,输出同一作物目标的空间位置信息,能在移动场景下对作物进行更准确的实时识别,能提高作物识别的鲁棒性,能为对靶施药提供数据支撑。
基于上述各实施例的内容,作物识别系统,还包括:图像采集设备702、显示设备703以及电源704;图像采集设备702、显示设备703与电源704分别与作物识别处理器701连接。
图像采集设备702用于在移动中实时采集种植于目标区域内的目标作物的视频流,并将视频流至作物识别处理器,以供作物识别处理器基于视频流获取当前帧图像。
显示设备703用于接收并显示作物识别处理器发送的作物目标的空间位置信息。
具体地,图像采集设备702与作物识别处理器701通过USB 3.0接口传输视频流。作物识别处理器701可以调用Opencv 4.0库函数读取摄像头,为提高视频流的传输速率,调整视频流的压缩格式为‘MJPEG’。作物识别处理器701安装v4l2库,使用“v4l2-ctl-d/dev/video0-c exposure_absolute=a”(a为相机曝光时间)调整图像采集设备702的曝光时间,提高图像采集设备702在不同光照强度下的拍摄质量,进而提高作物识别准确率。
电源704可以通过逆变器706与显示设备703和作物识别处理器701连接,从而可以为显示设备703和作物识别处理器701提供电源。
本发明实施例中的作物识别系统,包括图像采集设备、显示设备和电源,适用于田间场景,能实现田间移动场景下作物的实时识别。
基于上述各实施例的内容,作物识别系统,还包括:编码器705;编码器705与作物识别处理器701连接;
编码器705用于在当前帧图像的预测结果中存在未关联的作物目标的情况下,基于目标参数,在当前帧图像的原始识别结果中添加未关联的作物目标。
基于上述各实施例的内容,一种农药喷施机器人,包括:如上的作物识别系统、农药喷施系统以及驱动系统;农药喷施系统分别与作物识别系统和驱动系统连接。
农药喷施系统和作物识别系统可在驱动系统的驱动下移动。
农药喷施系统可基于作物识别系统发送的作物目标的空间位置信息,对作物目标进行对靶施药。
具体地,为了便于对本发明实施例中的农药喷施机器人的理解,以下通过一个实例说明本发明实施例中的农药喷施机器人。
图8为基于本发明提供的农药喷施机器人进行对靶施药的流程示意图。如图8所示,基于本发明实施例中的农药喷施机器人开始对种植于目标区域的甘蓝进行对靶施药后,驱动系统带动作物识别系统和农药喷施系统,按照预设路线在目标区域内移动,作物识别系统中的图像采集设备702可以在移动中获取种植于目标区域的甘蓝的视频流,并可以将上述视频流发送至作物识别处理器。
作物识别处理器基于上述视频流,获取当前帧图像,并基于作物识别模型,获取当前帧图像的原始识别结果。
基于上一帧图像的预测结果以及编码器的计算结果,对当前帧图像的原始识别结果进行修正,获得当前帧图像的识别结果,并可以基于卡尔曼滤波算法计算下一帧图像的预测结果。其中,上述编码器设置于驱动系统上,可以基于驱动系统的移动速度和当前帧与上一帧之间的间隔时长,通过数值计算的方式,对当前帧图像的原始识别结果进行修正。
基于匈牙利算法关联上一帧图像的识别结果与当前帧图像的识别结果中的同一甘蓝,对判断同一甘蓝的映射对象对应的基准点和同一甘蓝的基准点之间的连线是否与当前帧图像的识别结果中的预设基准线相交。
在上述连线与当前帧图像的识别结果中的预设基准线未相交的情况下,作物识别处理器基于获取当前帧图像进行作物识别。
在上述连线与当前帧图像的识别结果中的预设基准线相交的情况下,作物识别处理器701向显示设备703和农药喷施系统发送上述甘蓝的空间位置信息。
农药喷施系统基于上述甘蓝的空间位置信息,将上述甘蓝作为靶标进行对靶施药。
在驱动系统未完成预设路线的情况下,说明农药喷施机器人未结束对种植于目标区域的甘蓝的对靶施药,则可以重复上述过程。
本发明实施例中的农药喷施机器人,可以在移动场景下对作物进行更准确的实时识别,并可以基于识别得到的作物目标的空间位置信息,在移动中实现对作物目标的对靶施药,能有效提高农药利用率,能降低成本投入,并能减少对空气、土壤以及地下水等的污染。
图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行作物识别方法,该方法包括:获取当前帧图像;将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果;基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,获得当前帧图像的识别结果;关联上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;其中,图像由移动中的图像采集设备采集;当前帧图像的预测结果基于上一帧图像的识别结果确定;作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作物独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的作物识别方法,该方法包括:获取当前帧图像;将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果;基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,获得当前帧图像的识别结果;关联上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;其中,图像由移动中的图像采集设备采集;当前帧图像的预测结果基于上一帧图像的识别结果确定;作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的作物识别方法,该方法包括:获取当前帧图像;将当前帧图像输入作物识别模型,获取作物识别模型输出的当前帧图像的原始识别结果;基于当前帧图像的预测结果,修正当前帧图像的原始识别结果,获得当前帧图像的识别结果;关联上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在上一帧待识别图像的识别结果和当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;其中,图像由移动中的图像采集设备采集;当前帧图像的预测结果基于上一帧图像的识别结果确定;作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
以上所描述的装置实施例仅仅是示意性的,其中所述作物分离部件说明的单元可以是或者也可以不是物理上分开的,作物单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (13)
1.一种作物识别方法,其特征在于,包括:
获取当前帧图像;
将所述当前帧图像输入作物识别模型,获取所述作物识别模型输出的当前帧图像的原始识别结果;
基于当前帧图像的预测结果,修正所述当前帧图像的原始识别结果,获得所述当前帧图像的识别结果;
关联上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;
其中,所述图像由移动中的图像采集设备采集;所述当前帧图像的预测结果基于上一帧图像的识别结果确定;所述作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
2.根据权利要求1所述的作物识别方法,其特征在于,所述作物识别模型,包括:特征提取模块、特征融合模块和作物识别模块;
所述特征提取模块包括多个级联的神经网络单元;
所述特征融合模块基于PANet网络构建,包括多个级联的所述神经网络单元;
所述神经网络单元为Transformer单元、DWConv单元、SPFF单元、Upsample单元和concat单元中的任意一种;
所述Transformer单元基于Transformer网络构建;
所述DWConv单元用于对输入的图像进行深度卷积、归一化处理和激活函数计算;
SPFF单元用于将不同尺寸的输入图像进行特征融合;
Upsample单元用于对输入图像进行上采样;
concat单元用于对输入图像进行concat函数计算。
3.根据权利要求1所述的作物识别方法,其特征在于,所述关联上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的同一作物目标,包括:
基于与所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果相对应的交并比值,关联所述上一帧图像的识别结果和所述当前帧图像的识别结果中的同一作物目标。
4.根据权利要求1所述的作物识别方法,其特征在于,所述基于当前帧图像的预测结果,修正所述当前帧图像的原始识别结果,还包括:
关联所述当前帧图像的预测结果和所述当前帧图像的原始识别结果中的同一作物目标;
基于同一作物目标在所述当前帧图像的预测结果和所述当前帧图像的原始识别结果中的相对位置关系,修正同一作物目标在所述当前帧图像的原始识别结果中的位置;
在所述当前帧图像的预测结果中存在未关联的作物目标的情况下,基于目标参数,在所述当前帧图像的原始识别结果中添加所述未关联的作物目标;
其中,所述目标参数包括当前帧与上一帧之间的间隔时长以及所述图像采集设备的移动速度。
5.根据权利要求1所述的作物识别方法,其特征在于,所述基于同一作物目标在所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的相对位置关系,输出所述同一作物目标的位置信息,包括:
基于同一作物目标在所述上一帧图像的识别结果中的位置信息,在所述当前帧图像的识别结果中添加同一作物目标的映射对象;
在同一作物目标的映射对象对应的基准点和同一作物目标对应的基准点之间的连线,与所述当前帧图像的识别结果中的预设基准线相交的情况下,输出同一作物目标的空间位置信息;
其中,同一作物目标的映射对象对应的基准点,为用于标注所述映射对象的标注框上边界的中点;同一作物目标对应的基准点,为用于标注同一作物目标的标注框上边界的中点。
6.根据权利要求1至5任一所述的作物识别方法,其特征在于,所述样本图像是基于如下方式获取的:
获取原始样本图像;
在部分原始样本图像中添加运动模糊,并将添加运动模糊后的原始样本图像以及未添加运动模糊的原始样本图像,作为待处理样本图像;
对所述待处理样本图像进行图像处理,并将经过图像处理后的待处理样本图像作为所述样本图像。
7.一种作物识别装置,其特征在于,包括:
图像获取模块,用于获取当前帧图像;
作物识别模块,用于将所述当前帧图像输入作物识别模型,获取所述作物识别模型输出的当前帧图像的原始识别结果;
结果修正模块,用于基于当前帧图像的预测结果,修正所述当前帧图像的原始识别结果,获得所述当前帧图像的识别结果;
结果输出模块,用于关联上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的同一作物目标,基于同一作物目标在所述上一帧待识别图像的识别结果和所述当前帧待识别图像的识别结果中的相对位置关系,输出同一作物目标的空间位置信息;
其中,所述图像由移动中的图像采集设备采集;所述当前帧图像的预测结果基于上一帧图像的识别结果确定;所述作物识别模型,是基于样本图像以及样本图像的原始识别结果进行训练后得到的。
8.一种作物识别系统,其特征在于,包括:作物识别处理器;还包括存储器及存储在所述存储器上并可在所述作物识别处理器上运行的程序或指令,所述程序或指令被所述作物识别处理器执行时执行如权利要求1至7任一项所述的作物识别方法。
9.根据权利要求8所述的作物识别系统,其特征在于,还包括:图像采集设备、显示设备以及电源;所述图像采集设备、所述显示设备与所述电源分别与所述作物识别处理器连接;
所述图像采集设备用于在移动中实时采集种植于目标区域内的目标作物的视频流,并将所述视频流至所述作物识别处理器,以供所述作物识别处理器基于所述视频流获取当前帧图像;
所述显示设备用于接收并显示所述作物识别处理器发送的作物目标的空间位置信息。
10.一种农药喷施机器人,其特征在于,包括:如权利要求8或9所述的作物识别系统、农药喷施系统以及驱动系统;所述农药喷施系统分别与所述作物识别系统和所述驱动系统连接;
所述农药喷施系统和所述作物识别系统可在所述驱动系统的驱动下移动;
所述农药喷施系统可基于所述作物识别系统发送的作物目标的空间位置信息,对所述作物目标进行对靶施药。
11.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述作物识别方法。
12.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述作物识别方法。
13.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述作物识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211062857.7A CN115457437A (zh) | 2022-08-31 | 2022-08-31 | 作物识别方法、装置、系统及农药喷施机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211062857.7A CN115457437A (zh) | 2022-08-31 | 2022-08-31 | 作物识别方法、装置、系统及农药喷施机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115457437A true CN115457437A (zh) | 2022-12-09 |
Family
ID=84301896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211062857.7A Pending CN115457437A (zh) | 2022-08-31 | 2022-08-31 | 作物识别方法、装置、系统及农药喷施机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115457437A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116543330A (zh) * | 2023-04-13 | 2023-08-04 | 北京京东乾石科技有限公司 | 农作物信息存储方法、装置、电子设备和计算机可读介质 |
-
2022
- 2022-08-31 CN CN202211062857.7A patent/CN115457437A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116543330A (zh) * | 2023-04-13 | 2023-08-04 | 北京京东乾石科技有限公司 | 农作物信息存储方法、装置、电子设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lippi et al. | A yolo-based pest detection system for precision agriculture | |
CN109766856B (zh) | 一种双流RGB-D Faster R-CNN识别哺乳母猪姿态的方法 | |
Aravind et al. | Design and development of automatic weed detection and smart herbicide sprayer robot | |
Peng et al. | Weed detection in paddy field using an improved RetinaNet network | |
CN110689519B (zh) | 基于yolo网络的雾滴沉积图像检测系统和方法 | |
CN111178197A (zh) | 基于Mask R-CNN和Soft-NMS融合的群养粘连猪实例分割方法 | |
CN112598713A (zh) | 一种基于深度学习的近岸海底鱼类检测、跟踪统计方法 | |
CN105809711B (zh) | 一种基于视频追踪的猪只运动大数据提取方法及其系统 | |
CN110070571B (zh) | 一种基于深度相机的毛竹形态参数检测方法 | |
CN113313737B (zh) | 一种基于计算机视觉的诱虫瓶昆虫计数方法以及计数装置 | |
CN114239756B (zh) | 一种虫害检测方法及系统 | |
Buddha et al. | Weed detection and classification in high altitude aerial images for robot-based precision agriculture | |
GB2609983A (en) | Image processing | |
CN115457437A (zh) | 作物识别方法、装置、系统及农药喷施机器人 | |
CN110414384B (zh) | 智能稻麦收获机导航线跟踪方法 | |
CN110689022B (zh) | 基于叶片匹配的各株作物图像提取方法 | |
Zhong et al. | Identification and depth localization of clustered pod pepper based on improved Faster R-CNN | |
CN112215714B (zh) | 基于无人机的稻穗检测方法及装置 | |
CN117274674A (zh) | 对靶施药方法、电子设备、存储介质及系统 | |
Osman et al. | Yield estimation using deep learning for precision agriculture | |
CN116935296A (zh) | 基于多任务深度学习的果园环境场景检测方法及终端 | |
CN108967246B (zh) | 虾苗定位方法 | |
CN113673340B (zh) | 一种害虫种类图像识别方法及系统 | |
CN114462485A (zh) | 一种红枣枣疯病初期防治方法 | |
CN113989253A (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 |