CN114662621B - 基于机器学习的农机作业面积计算方法及系统 - Google Patents
基于机器学习的农机作业面积计算方法及系统 Download PDFInfo
- Publication number
- CN114662621B CN114662621B CN202210568385.6A CN202210568385A CN114662621B CN 114662621 B CN114662621 B CN 114662621B CN 202210568385 A CN202210568385 A CN 202210568385A CN 114662621 B CN114662621 B CN 114662621B
- Authority
- CN
- China
- Prior art keywords
- data
- track
- calculating
- algorithm
- graph
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- 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/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A40/00—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production
- Y02A40/10—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production in agriculture
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于机器学习的农机作业面积计算方法及系统,包括实现计亩算法的终端与存储介质。本发明为了解决单一计亩算法在多种行驶轨迹与多种复杂的作业场景下作业面积计算精度较低的问题。具体步骤包括:获取农机具作业数据,使用lof算法去除轨迹漂移点与停留点;利用霍普金斯统计量与dbsca算法对数据进行时间和空间上的聚类分割作业地块;利用CNN算法出识别轨迹类型;根据图像像素点计算漏耕率;通过决策树算法选择适宜的插值方法与面积计算方法,并计算作业面积。本发明相对于现有的算法,适用于多种作业场景,多种作业轨迹类型,并且避免了漏耕对面积测量结果的影响,有效地提高了作业面积计算的精确度。
Description
技术领域
本发明属于农机作业面积计算方法领域,更具体地,涉及一种基于机器学习的农机作业面积计算方法及系统。
背景技术
智慧农业系统在帮助农户耕种管收无人化作业时,需要准确地监测出各个环节的作业面积,从而进行全过程的科学化管控。同时,在国家农机作业补贴实施过程中,存在套补现象,实际种植粮食面积仍需要进一步准确核实。如何精准地测出作业面积,是智慧农业科学控制农业生产以及国家作业补贴核实的需要。
目前,基于的农机作业面积测量方法大致可分为两类:一种是基于边界的测量方法,一种是基于轨迹的测量方法。基于边界的测量方法主要是手持或车载测量仪绕作业区域边界一周,然后计算所得多边形面积即为作业面积。基于轨迹的测量方法目前主要有:根据农机位移长度乘作业幅宽来计算出实际的作业面积的方法、基于农机空间运行轨迹的设置作业缓冲区的作业计量算法、使用改进后的Alpha-Shape算法计算农机作业面积、基于面积格点覆盖的深松作业面积计算方法、基于耕作轨迹等效矩形累加的农机作业面积测量方法、基于贝塞尔曲线拟合路径的农机作业面积计算方法、识别最外侧的轮廓点然后使用三角剖分法求出作业面积的方法等。
基于边界的面积测量方法可以胜任不规则地块的面积测量,一般来说地块面积愈大,测量结果的精度就愈高,但是其缺点就在于无法对单台农机的作业面积进行实时动态测量,且难以对作业过程中的重漏面积进行处理。故本专利采用基于轨迹的测量方法。上述基于轨迹的计算方法,其泛化能力较弱,不适宜多场景应用如:根据农机位移长度乘作业幅宽来计算出实际的作业面积的方法,其在涉及到重耕操作时误差较为明显;又如基于农机空间运行轨迹的设置作业缓冲区的作业计量算法,其在作业地块面积偏大时其运行效率较低;又如改进后的Alpha-Shape算法其比较适用于小面积与不规则田块的计算,其对于小块农田与不规则农田面积测量时的误差率分别为:3.5%,5%以上,但对于大田块的测量误差较大。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供一种基于作业轨迹识别的农机作业面积计算方法,可以计算携带了北斗或GPS且带有差分定位功能的数据采集设备的农业机械的作业面积,并且可以保证计算结果的相对准确性,且使计算速度达到相对最优。
为了解决上述问题,按照本发明的第一方面,提供一种基于机器学习的农机作业面积计算方法,包括:
步骤1:根据农机编码与作业时间,获取农机具作业轨迹数据;
步骤2:对步骤1获取到的数据进行数据处理,包括:停留点的剔除;使用lof算法对漂移点进行剔除;
步骤3:对处理好的数据计算霍普金斯统计量,如果该值大于0.8,则使用改进的dbscan聚类算法进行地块划分,如果小于0.8则不用使用聚类算法,如果小于0.55的则将其删除并标注为异常作业;
步骤4:对步骤3获取到的轨迹空间聚类数据,将其时间纬度转化为时间戳的形式,对一维的时间戳数据进行维度使其扩充到二维,使用dbscan聚类算法找到其中数量规模最大的类,取该类中的最小与最大值;
步骤5:根据步骤4得到的时间最小与最大值,从步骤2处理好的数据中筛选时间范围在该区间的值;
步骤6:将步骤5得到的数据,经纬度点连接为轨迹并将其转化为图片,对该图片,使用预先训练好的CNN算法进行分类;
步骤7:将步骤5得到的数据,对每段轨迹,以轨迹为长宽幅为宽填充颜色,得到作业区域图形;对步骤5得到的数据运用德劳内三角剖分算法计算出轮廓,对轮廓内部进行像素点填充得到填充图,对作业区域图形和填充图进行像素点统计,得到两个图彩色像素点个数的比值,若该值大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业;
步骤8:根据机型,步骤6所得轨迹分类,步骤7所得地块作业分类,利用预先训练好的决策树模型进行计算,得出最优情况下需要使用到的轨迹插值方法与面积计算方法,对数据进行计算,并输出计算结果。
进一步地,步骤6中,所述预先训练好的CNN算法包括:
步骤6.1:将经纬度数据点进行预处理,按时间顺序连接点形成轨迹折线图,保存折线图;
步骤6.2:人工对部分折线图进行分类,按照轨迹特征分为五类:交替形、回字形、往复形、联合作业、其他,分别标识为0、1、2、3、4;
步骤6.3:读取折线图,转为灰度图,进行归一化,并重新修改图片尺寸,生成处理后的图片;
步骤6.4:对处理后的图片进行数据集划分,按照8:2划分为训练集和测试集,对数据集进行one-hot编码,得到编码后的训练集和测试集;
步骤6.5:CNN训练出分类模型,对新输入的经纬度数据,进行步骤6.1、步骤6.2、步骤6.3的处理后,使用训练的CNN模型进行分类。
进一步地,步骤6.5中,CNN训练出分类模型包括:
步骤6.5.1:初始化CNN网络结构,以及权值参数和偏置参数;
步骤6.5.2:输入训练集,利用前向传播算法计算出网络最后一层输出;
步骤6.5.3:用softmax函数对输出进行处理,并计算交叉熵损失函数;
步骤6.5.4:根据反向传播算法,计算损失函数对各项权重和偏置的偏导;
步骤6.5.5:利用Adam梯度下降法,更新权重与偏置,运行50轮结束,保存模型。
进一步地,步骤6中,按照轨迹特征分为五类:交替形、回字形、往复形、联合作业或其他中的一种或几种。
进一步地,步骤7包括:
步骤7.1:将经纬度数据点按时间顺序连接,转化为折线图;
步骤7.2:以相邻两点为长,宽幅为宽,作矩形,对矩形内部进行填充,得到填充图,填充图即为农机作业区域;
步骤7.3:对填充图进行图像高斯模糊操作后,转化成二值图像,运用OpenCV的轮廓检测算法,检测出填充图的外围轮廓;
步骤7.4:计算漏耕率R_miss:R_miss=countWork / countAround,其中countWork是填充图像的白色像素点数,countAround是轮廓图的白色像素点数;
步骤7.5:若漏耕率大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业。
进一步地,步骤8包括:
步骤8.1:将轨迹经纬度数据点进行预处理;
步骤8.2:用训练好的CNN模型进行轨迹分类,得到轨迹的类别;
步骤8.3:用不同的插值算法以及不同的计亩算法计算面积;
步骤8.4:计算误差值,标记方法好坏,对于每条作业轨迹,将计算误差最小的一组方法标位1,否则为0;
步骤8.5:生成特征矩阵,对于每条作业轨迹,特征为【机器类型,作业类型,轨迹类别,漏耕率,平均速度,插值方法,计亩算法】,标签为【方法的好坏】,标签取值为0或1;
步骤8.6:随机分割数据集,决策树模型建立。
进一步地,步骤8.6中,决策树模型建立包括:
步骤8.6.4:计算信息分裂信息:
步骤8.6.5:计算信息增益率:
步骤8.6.6:重复步骤步骤8.6.2至步骤8.6.5,同理计算出按其它属性划分的信息增益率,选取最大信息增益率的属性为根节点;
步骤8.6.7:递归上述过程,直至数据集为空或样本属于同一类别或属性列表为空;
步骤8.6.8:应用PEP剪枝算法,删去部分节点,防止过拟合,对数据进行计算,并输出计算结果。
按照本发明的第二方面,提供一种基于机器学习的农机作业面积计算系统,包括:
数据获取模块,用于根据农机编码与作业时间,获取农机具作业轨迹数据;
数据处理模块,用于对步骤1获取到的数据进行数据处理,包括:停留点的剔除;使用lof算法对漂移点进行剔除;
地块划分模块,用于对处理好的数据计算霍普金斯统计量,如果该值大于0.8,则使用改进的dbscan聚类算法进行地块划分,如果小于0.8则不用使用聚类算法,如果小于0.55的则将其删除并标注为异常作业;
数据聚类模块,用于对获取到的轨迹空间聚类数据,将其时间纬度转化为时间戳的形式,对一维的时间戳数据进行维度使其扩充到二维,使用dbscan聚类算法找到其中数量规模最大的类,取该类中的最小与最大值;
数据筛选模块,用于根据得到的时间最小与最大值,从步骤2处理好的数据中筛选时间范围在该区间的值;
轨迹分类模块,用于将得到的数据经纬度点连接为轨迹并将其转化为图片,对该图片,使用预先训练好的CNN算法进行分类;
作业类型分析模块,用于将得到的数据,对每段轨迹,以轨迹为长宽幅为宽填充颜色,得到作业区域图形;对步骤5得到的数据运用德劳内三角剖分算法计算出轮廓,对轮廓内部进行像素点填充得到填充图,对作业区域图形和填充图进行像素点统计,得到两个图彩色像素点个数的比值,若该值大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业;
决策计算模块,用于根据机型,所得轨迹分类,所得地块作业分类,利用预先训练好的决策树模型进行计算,得出最优情况下需要使用到的轨迹插值方法与面积计算方法,对数据进行计算,并输出计算结果。
按照本发明的第三方面,提供一种电子设备,包括:
至少一个处理器、至少一个存储器和通信接口;其中,
所述处理器、存储器和通信接口相互间进行通信;
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令,以执行权利要求1至7任一项所述的方法。
按照本发明的第三方面,提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行权利要求1至7中任一项所述的方法。
本发明的有益效果:
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、本发明的方法,可以计算携带了北斗或GPS且带有差分定位功能的数据采集设备的农业机械的作业面积,并且可以保证计算结果的相对准确性,且使计算速度达到相对最优。
2、本发明的方法,算法泛化能力较弱的缺点,该方法对于一些特殊的作业情况,如重复作业,遗漏作业,联合作业等,可通过增加相应的轨迹分类与面积计算方法,快速的解决特殊情况下面积计算问题,且可以使计算结果达到最优。
附图说明
图1为本发明的实施例基于作业轨迹识别的农机作业面积计算方法实施流程图;
图2为发明实施例中改进的dbscan算法流程图;
图3为发明实施例的不同轨迹分类类别示意图;
图4为发明实施例的训练的网络模型图;
图5为发明实施例中经纬度数据(a)散点图和(b)折线图;
图6为发明实施例中数据处理流程示意图;
图7为本发明实施中训练结果曲线图;
图8为本发明实施例的训练方法逻辑流程图;
图9为本发明实施例中基于作业轨迹和地块划分的决策树算法的流程图;
图10为本发明实施例一中作业轨迹示意图;
图11为本发明实施例一中处理后的作业轨迹示意图;
图12为本发明实施例一中进行lof异常值检测与剔除后的作业轨迹示意图;
图13为本发明实施例一中地块划分结果示意图;
图14为本发明实施例一中随机筛选某时刻地块的轨迹数据;
图15为本发明实施例一中地块外框线示意图;
图16为本发明实施例二中插秧机某时间的作业轨迹示意图;
图17为本发明实施例二中停驻点去除处理后作业轨迹示意图;
图18为本发明实施例二中进行lof异常值检测与剔除后的作业轨迹示意图;
图19为本发明实施例二中经过dbscan聚类,地块划分结果示意图;
图20为本发明实施例二中随机筛选某时刻地块的轨迹数据;
图21为本发明实施例二中进行三次贝塞尔曲线插值后的轨迹数据;
图22为本发明实施例二中地块外框线示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
步骤1,调用相关系统接口,根据农机编码与作业时间,获取农机具作业轨迹数据;
步骤2,对步骤1获取到的数据进行数据处理。数据处理包括:停留点的剔除;使用lof算法对漂移点进行剔除;
步骤3,对经过步骤2处理好的数据,计算霍普金斯统计量(该值可理解为数据聚类效果的好坏),如果该值大于0.8,则使用改进的dbscan聚类算法(主要改进为算法参数可根据点均距离可变)进行地块划分,如果小于0.8则不用使用聚类算法。如果小于0.55的则将其删除并标注为异常作业,如图2所示。
步骤4,对步骤3获取到的轨迹空间聚类数据,将其时间维度转化为时间戳的形式,对1维的时间戳数据进行维度扩充使其扩充到二维。然后使用dbscan聚类算法。找到其中数量规模最大的类,取该类中的最小与最大值。
步骤5,根据步骤4得到的时间最小与最大值,从步骤2处理好的数据中筛选时间范围在该区间的值。
步骤6,将步骤5得到的数据,经纬度点连接为轨迹并将其转化为图片,对该图片,使用预先训练好的CNN算法进行分类,轨迹分类的类别为交替形,回字形,往复形,联合作业及其他形状,使用预先训练好的cnn神经网络算法,对轨迹数据进行识别分类,其准确率可以达到94.5%。分类效果较好。若轨迹数据更加丰富,识别准确率还有进一步提升的可能。
如图3所示。该算法使用十几台不同类型的作业机械,如下表所示,1年时间内作业上千亩土地的轨迹数据,经过人工对轨迹分类,训练而来;
具体包括如下步骤:
(1)将经纬度数据点进行预处理,按时间顺序连接点形成轨迹折线图,保存折线图;(2)人工对部分折线图进行分类,按照轨迹特征分为五类:交替形、回字形、往复形、联合作业、其他,分别标识为0、1、2、3、4;
(3)读取折线图,转为灰度图,进行归一化,并重新修改图片尺寸,生成处理后的图片;(4)对处理后的图片进行数据集划分,按照8:2划分为训练集和测试集;(5)对数据集进行one-hot编码,得到编码后的训练集和测试集;(6)CNN训练出分类模型,如图4所示,包括如下步骤:1)初始化CNN网络结构,以及权值参数和偏置参数;2)输入训练集,利用前向传播算法计算出网络最后一层输出;3)用softmax函数对输出进行处理,并计算交叉熵损失函数;4)根据反向传播算法,计算损失函数对各项权重和偏置的偏导;5)利用Adam梯度下降法,更新权重与偏置,运行50轮结束,保存模型;(7)对新输入的经纬度数据,进行(1)(2)(3)的处理后,使用(6)训练的CNN模型进行分类。例如,生成共2000张轨迹图片,包括四个轨迹类别,每个类别500张图片,随机选取80%作为训练集,20%作为测试集,选取一个时期,每轮训练15条数据,训练106轮,即Epotch = 1,batch_size = 15, batch_num = 2000*80%/15= 106.7,训练结果曲线如图7所示,可以看出最终在测试集上的准确率为94.5%。
步骤7,将步骤5得到的数据,对每段轨迹,以轨迹为长宽幅为宽填充颜色,得到作业区域图形;对步骤5得到的数据,运用德劳内三角剖分算法计算出轮廓,然后对轮廓内部进行像素点填充,得到填充图。对作业区域图形和填充图进行像素点统计,得到两个图彩色像素点个数的比值(真实作业区域/外框轮廓区域)。若该值大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业。具体而言,如图5所示,包括如下步骤:(1)将经纬度数据点按时间顺序连接,转化为折线图;(2)以相邻两点为长,宽幅为宽,作矩形,对矩形内部进行填充,得到填充图,填充图即为农机作业区域;(3)轮廓检测:对填充图进行图像高斯模糊操作后,转化成二值图像(image_binary)。再运用OpenCV的轮廓检测算法,检测出填充图的外围轮廓(image_contours);(4)计算漏耕率R_miss:R_miss=countWork / countAround。其中countWork 是填充图像(image_BGR)的白色像素点数,countAround是轮廓图(image_contours)的白色像素点数;(5)若漏耕率大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业。
步骤8,根据机型,步骤6所得轨迹分类,步骤7所得地块作业分类,利用预先训练好的决策树模型进行计算,计算得出最优情况下,需要使用到的轨迹插值方法(插值方法有:等密度插值,均等距离插值,二次贝塞尔曲线插值,三次贝塞尔曲线插值,二次函数插值)与面积计算方法(面积计算的方法有:外框线法,三角剖分法,等效矩形法,缓冲区法,联合作业轨迹合并面积计算法)。
决策树模型根据十几台不同机器实际作业的上千亩土地的轨迹,与不同算法,不同参数所计算出的结面积结果,与每块土地的标准作业面积进行模型的构建,具体包括如下步骤:(1)将轨迹经纬度数据点进行预处理;(2)用训练好的CNN模型进行轨迹分类,得到轨迹的类别;(3)用不同的插值算法(2次贝塞尔插值、3次贝塞尔插值、等距插值、密度插值),以及不同的计亩算法(外框线算法、等效矩形算法、缓冲区算法、德劳内三角形算法),计算面积;(4)计算误差值,标记方法好坏。对于每条作业轨迹,将计算误差最小的一组方法标位1,否则为0;(5)生成特征矩阵。对于每条作业轨迹,特征为【机器类型,作业类型,轨迹类别,漏耕率,平均速度,插值方法,计亩算法】,标签为【方法的好坏】,标签取值为0或1;(6)随机分割数据集;(7)决策树模型建立:
Step4 :利用公式4,计算信息分裂信息。
Step5 :利用公式5,计算信息增益率。
Step6 :重复步骤step2至step5,同理计算出按其它属性划分的信息增益率,选取最大信息增益率的属性为根节点;
Step7:递归上述过程,直至数据集为空或样本属于同一类别或属性列表为空;
Step8:应用PEP剪枝算法,删去部分节点,防止过拟合。
在本发明的实施例中,决策树实现的案例,包括过程和结果:
数据集:共24039条数据,按8:2划分为训练集合数据集。
训练模型:用c4.5决策树模型进行训练;
结果:训练集的准确率为92.47%。
步骤9,根据步骤8输出的方法,对数据进行计算,并输出计算结果。
实施例1:
步骤一:数据获取:使用python语言编写脚本,调用网络接口,获取编号为鄂0100326的拖拉机20211112日的轨迹数,其轨迹数据如图10所示;
步骤二:数据处理:首先经过停驻点去除处理,处理后的数据如图11所示,然后进行lof异常值检测与剔除,效果如图12所示;然后计算其霍普金斯统计量为:0.9519594251698345,判断其霍普金斯量大于0.8,则对其进行dbscan聚类,经过dbscan聚类,地块划分结果为以下三块土地,如图13所示;
地块1:作业时间2021-11-12 07:39:33 2021-11-12 08:51:21
地块2:作业时间2021-11-12 08:51:27 2021-11-12 10:20:12
地块3:作业时间2021-11-12 10:20:48 2021-11-12 11:11:54
这里任意选择一块作业地块来进行接下来的步骤。
为了使各步骤更加直观的呈现,这里选择作业地块3进行以下步骤
筛选该机器当天10:20:48-11:11:54的轨迹数据如图14所示;
步骤三:轨迹分类:将该轨迹数据转换为图片,然后经过预先训练的cnn神经网络进行识别,得出该轨迹属于交替型作业轨迹,然后将该轨迹按照作业轨迹与作业宽幅进行填充;经过计算得出该轨迹的作业率为:0.968,所以将其归类为满幅作业;
步骤四:决策树决策:由机器编号可知该机器为拖拉机,可进行土地旋耕作业。由轨迹分类算法知其为交替型满幅作业,作业率为0.968,另可计算出该机器对于该作业地块的平均作业速度为4.15米/秒,将以上信息,汇总编码为:
1,1,1,0.968,4.15
将编码好的数据使用预先训练好的决策树算法进行计算。
算法输出为建议使用间距为1米的等距插值方法进行插值,且使用外框线算法进行面积计算;
步骤五:面积计算:根据决策树算法输出的插值与面积计算方法进行相应的面积计算,该地块进行等距离插值后的数据,然后使用外框线面积及算法计算作业面积,外框线面积计算方法中该地块外框线示意如图15所示,该地块在卫星地图实际测量面积为4472.40平方米,使用计算公式转为亩数为6.7147亩.可见,算法计算面积与实际地块的面积偏差为1.04%。
实施例2:
步骤一:数据获取:使用python语言编写脚本,调用网络接口,获取编号为鄂0100899的插秧机2021-09-27日的轨迹数据,其轨迹数据如图16所示;
步骤二:数据处理:先经过停驻点去除处理,处理后的数据如图17所示:然后进行lof异常值检测与剔除,效果如图18所示,然后计算其霍普金斯统计量为:0.9829652086685471,判断其霍普金斯量大于0.8,则对其进行dbscan聚类,经过dbscan聚类,地块划分结果为以下一块土地,如图19所示;
地块1:作业时间2021-09-27 07:49:09 2021-09-27 10:33:33
这里选择作业地块1进行以下步骤
筛选该机器当天07:49:09-10:33:33的轨迹数据如图20所示;
步骤三:轨迹分类:将该轨迹数据转换为图片,然后经过预先训练的cnn神经网络进行识别,得出该轨迹属于往复型作业轨迹,然后将该轨迹按照作业轨迹与作业宽幅进行填充,经过计算得出该轨迹的作业率为:0.968,所以将其归类为满幅作业。
步骤四:决策树决策:
由机器编号可知该机器为插秧机,可进行插秧作业。由轨迹分类算法知其为往复型满幅作业,作业率为0.968,另可计算出该机器对于该作业地块的平均作业速度为2.18米/秒。
将以上信息,汇总编码为:
2,2,2,0.968,2.18
将编码好的数据使用预先训练好的决策树算法进行计算;
算法输出为建议使用三次贝塞尔曲线插值方法进行插值,且使用缓冲区算法进行面积计算;
步骤五:面积计算:根据决策树算法输出的插值与面积计算方法进行相应的面积计算,该地块进行三次贝塞尔曲线插值后的数据,如图21所示,然后使用外框线面积及算法计算作业面积,外框线面积计算方法中该地块外框线示意如图22所示,最终算法计算得作业面积1.30亩,该地块在卫星地图实际测量面积为852.48平方米,使用计算公式转为亩数为1.28亩
可见,算法计算面积与实际地块的面积偏差为1.56%。
本发明实施例的方法是依托电子设备实现的,因此对相关的电子设备有必要做一下介绍。基于此目的,本发明的实施例提供了一种电子设备,如图3所示,该电子设备包括:至少一个处理器(processor)、通信接口(Communications Interface)、至少一个存储器(memory)和通信总线,其中,至少一个处理器,通信接口,至少一个存储器通过通信总线完成相互间的通信。至少一个处理器可以调用至少一个存储器中的逻辑指令,以执行前述各个方法实施例提供的方法的全部或部分步骤。
此外,上述的至少一个存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个方法实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于机器学习的农机作业面积计算方法,其特征在于,包括:
步骤1:根据农机编码与作业时间,获取农机具作业轨迹数据;
步骤2:对步骤1获取到的数据进行数据处理,包括:停留点的剔除;使用lof算法对漂移点进行剔除;
步骤3:对处理好的数据计算霍普金斯统计量,如果该值大于0.8,则使用改进的dbscan聚类算法进行地块划分,如果小于0.8则不用使用聚类算法,如果小于0.55的则将其删除并标注为异常作业;
步骤4:对步骤3获取到的轨迹空间聚类数据,将其时间纬度转化为时间戳的形式,对一维的时间戳数据进行维度扩充使其扩充到二维,使用dbscan聚类算法找到其中数量规模最大的类,取该类中的最小与最大值;
步骤5:根据步骤4得到的时间最小与最大值,从步骤2处理好的数据中筛选时间范围在该最小值到最大值区间的值;
步骤6:将步骤5得到的数据,经纬度点连接为轨迹并将其转化为图片,对该图片,使用预先训练好的CNN算法进行分类;
步骤7:将步骤5得到的数据,对每段轨迹,以轨迹为长宽幅为宽填充颜色,得到作业区域图形;对步骤5得到的数据运用德劳内三角剖分算法计算出轮廓,对轮廓内部进行像素点填充得到填充图,对作业区域图形和填充图进行像素点统计,得到两个图彩色像素点个数的比值,若该值大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业;
步骤8:根据机型,步骤6所得轨迹分类,步骤7所得地块作业分类,利用预先训练好的决策树模型进行计算,得出最优情况下需要使用到的轨迹插值方法与面积计算方法,对数据进行计算,并输出计算结果;
所述步骤8包括:
步骤8.1:将轨迹经纬度数据点进行预处理;
步骤8.2:用训练好的CNN模型进行轨迹分类,得到轨迹的类别;
步骤8.3:用不同的插值算法以及不同的计亩算法计算面积;
步骤8.4:计算误差值,标记方法好坏,对于每条作业轨迹,将计算误差最小的一组方法标位1,否则为0;
步骤8.5:生成特征矩阵,对于每条作业轨迹,特征为【机器类型,作业类型,轨迹类别,漏耕率,平均速度,插值方法,计亩算法】,标签为【方法的好坏】,标签取值为0或1;
步骤8.6:随机分割数据集,决策树模型建立;
所述步骤8.6中,决策树模型建立包括:
步骤8.6.4:计算信息分裂信息:
步骤8.6.5:计算信息增益率:
步骤8.6.6:重复步骤8.6.2至步骤8.6.5,同理计算出按其它属性划分的信息增益率,选取最大信息增益率的属性为根节点;
步骤8.6.7:递归上述过程,直至数据集为空或样本属于同一类别或属性列表为空;
步骤8.6.8:应用PEP剪枝算法,删去部分节点,防止过拟合,对数据进行计算,并输出计算结果。
2.根据权利要求1所述的一种基于机器学习的农机作业面积计算方法,其特征在于,步骤6中,所述预先训练好的CNN算法包括:
步骤6.1:将经纬度数据点进行预处理,按时间顺序连接点形成轨迹折线图,保存折线图;
步骤6.2:人工对部分折线图进行分类,按照轨迹特征分为五类:交替形、回字形、往复形、联合作业、其他,分别标识为0、1、2、3、4;
步骤6.3:读取折线图,转为灰度图,进行归一化,并重新修改图片尺寸,生成处理后的图片;
步骤6.4:对处理后的图片进行数据集划分,按照8:2划分为训练集和测试集,对数据集进行one-hot编码,得到编码后的训练集和测试集;
步骤6.5:CNN训练出分类模型,对新输入的经纬度数据,进行步骤6.1、步骤6.2、步骤6.3的处理后,使用训练的CNN模型进行分类。
3.根据权利要求2所述的一种基于机器学习的农机作业面积计算方法,其特征在于,步骤6.5中,CNN训练出分类模型包括:
步骤6.5.1:初始化CNN网络结构,以及权值参数和偏置参数;
步骤6.5.2:输入训练集,利用前向传播算法计算出网络最后一层输出;
步骤6.5.3:用softmax函数对输出进行处理,并计算交叉熵损失函数;
步骤6.5.4:根据反向传播算法,计算损失函数对各项权重和偏置的偏导;
步骤6.5.5:利用Adam梯度下降法,更新权重与偏置,运行50轮结束,保存模型。
4.根据权利要求3所述的一种基于机器学习的农机作业面积计算方法,其特征在于,步骤6中,按照轨迹特征分为五类:交替形、回字形、往复形、联合作业或其他中的一种或几种。
5.根据权利要求1-4中任一项所述的一种基于机器学习的农机作业面积计算方法,其特征在于,步骤7包括:
步骤7.1:将经纬度数据点按时间顺序连接,转化为折线图;
步骤7.2:以相邻两点为长,宽幅为宽,作矩形,对矩形内部进行填充,得到填充图,填充图即为农机作业区域;
步骤7.3:对填充图进行图像高斯模糊操作后,转化成二值图像,运用OpenCV的轮廓检测算法,检测出填充图的外围轮廓;
步骤7.4:计算漏耕率R_miss:R_miss=countWork / countAround,其中countWork 是填充图像的白色像素点数,countAround是轮廓图的白色像素点数;
步骤7.5:若漏耕率大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业。
6.一种基于机器学习的农机作业面积计算系统,其特征在于,包括:
数据获取模块,用于根据农机编码与作业时间,获取农机具作业轨迹数据;
数据处理模块,用于对步骤1获取到的数据进行数据处理,包括:停留点的剔除;使用lof算法对漂移点进行剔除;
地块划分模块,用于对处理好的数据计算霍普金斯统计量,如果该值大于0.8,则使用改进的dbscan聚类算法进行地块划分,如果小于0.8则不用使用聚类算法,如果小于0.55的则将其删除并标注为异常作业;
数据聚类模块,用于对获取到的轨迹空间聚类数据,将其时间纬度转化为时间戳的形式,对一维的时间戳数据进行维度扩充使其扩充到二维,使用dbscan聚类算法找到其中数量规模最大的类,取该类中的最小与最大值;
数据筛选模块,用于根据得到的时间最小与最大值,从步骤2处理好的数据中筛选时间范围在该最小值到最大值区间的值;
轨迹分类模块,用于将得到的数据经纬度点连接为轨迹并将其转化为图片,对该图片,使用预先训练好的CNN算法进行分类;
作业类型分析模块,用于将得到的数据,对每段轨迹,以轨迹为长宽幅为宽填充颜色,得到作业区域图形;对步骤5得到的数据运用德劳内三角剖分算法计算出轮廓,对轮廓内部进行像素点填充得到填充图,对作业区域图形和填充图进行像素点统计,得到两个图彩色像素点个数的比值,若该值大于90%将其标注为满幅作业,大于70%,将其标注为小部分未作业,若小于70%,则将其标注为大部分未作业;
决策计算模块,用于根据机型,所得轨迹分类,所得地块作业分类,利用预先训练好的决策树模型进行计算,得出最优情况下需要使用到的轨迹插值方法与面积计算方法,对数据进行计算,并输出计算结果;
所述根据机型,所得轨迹分类,所得地块作业分类,利用预先训练好的决策树模型进行计算,得出最优情况下需要使用到的轨迹插值方法与面积计算方法,对数据进行计算,并输出计算结果,包括:
步骤8.1:将轨迹经纬度数据点进行预处理;
步骤8.2:用训练好的CNN模型进行轨迹分类,得到轨迹的类别;
步骤8.3:用不同的插值算法以及不同的计亩算法计算面积;
步骤8.4:计算误差值,标记方法好坏,对于每条作业轨迹,将计算误差最小的一组方法标位1,否则为0;
步骤8.5:生成特征矩阵,对于每条作业轨迹,特征为【机器类型,作业类型,轨迹类别,漏耕率,平均速度,插值方法,计亩算法】,标签为【方法的好坏】,标签取值为0或1;
步骤8.6:随机分割数据集,决策树模型建立;
所述步骤8.6中,决策树模型建立包括:
步骤8.6.4:计算信息分裂信息:
步骤8.6.5:计算信息增益率:
步骤8.6.6:重复步骤8.6.2至步骤8.6.5,同理计算出按其它属性划分的信息增益率,选取最大信息增益率的属性为根节点;
步骤8.6.7:递归上述过程,直至数据集为空或样本属于同一类别或属性列表为空;
步骤8.6.8:应用PEP剪枝算法,删去部分节点,防止过拟合,对数据进行计算,并输出计算结果。
7.一种电子设备,其特征在于,包括:
至少一个处理器、至少一个存储器和通信接口;其中,
所述处理器、存储器和通信接口相互间进行通信;
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令,以执行权利要求1至5任一项所述的方法。
8.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210568385.6A CN114662621B (zh) | 2022-05-24 | 2022-05-24 | 基于机器学习的农机作业面积计算方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210568385.6A CN114662621B (zh) | 2022-05-24 | 2022-05-24 | 基于机器学习的农机作业面积计算方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114662621A CN114662621A (zh) | 2022-06-24 |
CN114662621B true CN114662621B (zh) | 2022-09-06 |
Family
ID=82037009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210568385.6A Active CN114662621B (zh) | 2022-05-24 | 2022-05-24 | 基于机器学习的农机作业面积计算方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114662621B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115424367A (zh) * | 2022-08-03 | 2022-12-02 | 洛阳智能农业装备研究院有限公司 | 基于gps的作业状态判断方法、装置、设备及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111868566A (zh) * | 2019-10-11 | 2020-10-30 | 安徽中科智能感知产业技术研究院有限责任公司 | 一种基于定位漂移测算模型的农机作业面积测算方法 |
CN113409240A (zh) * | 2020-09-01 | 2021-09-17 | 山东省计算中心(国家超级计算济南中心) | 一种基于北斗定位数据的农机行为分析与作业面积统计方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180035606A1 (en) * | 2016-08-05 | 2018-02-08 | Romello Burdoucci | Smart Interactive and Autonomous Robotic Property Maintenance Apparatus, System, and Method |
US10814976B2 (en) * | 2017-09-29 | 2020-10-27 | Deere & Company | Using unmanned aerial vehicles (UAVs or drones) in forestry machine-connectivity applications |
US10713484B2 (en) * | 2018-05-24 | 2020-07-14 | Blue River Technology Inc. | Semantic segmentation to identify and treat plants in a field and verify the plant treatments |
DE102018127518A1 (de) * | 2018-11-05 | 2020-05-07 | Advanced Realtime Tracking Gmbh | Vorrichtung und Verfahren zur Bearbeitung mindestens eines Arbeitsbereiches mit einem Bearbeitungswerkzeug |
JP6716765B1 (ja) * | 2018-12-28 | 2020-07-01 | キヤノン株式会社 | 画像処理装置、画像処理システム、画像処理方法、プログラム |
CN110490180B (zh) * | 2019-07-05 | 2022-06-17 | 平安国际智慧城市科技股份有限公司 | 基于图像识别的作业批改方法、装置、存储介质及服务器 |
KR20230004467A (ko) * | 2020-05-04 | 2023-01-06 | 인텔 코포레이션 | 취약 도로 사용자 경고 메시지 생성 및 전송 |
CN113010567B (zh) * | 2021-02-07 | 2022-06-17 | 中电科卫星导航运营服务有限公司 | 一种基于bds/gps定位数据时空特征的农机作业面积计算方法 |
CN114046726A (zh) * | 2021-11-09 | 2022-02-15 | 河北信翔电子有限公司 | 一种基于北斗卫星定位行驶轨迹的农机作业面积计算方法 |
CN114419468A (zh) * | 2022-01-26 | 2022-04-29 | 江西农业大学 | 一种结合注意力机制和空间特征融合算法的水田分割方法 |
-
2022
- 2022-05-24 CN CN202210568385.6A patent/CN114662621B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111868566A (zh) * | 2019-10-11 | 2020-10-30 | 安徽中科智能感知产业技术研究院有限责任公司 | 一种基于定位漂移测算模型的农机作业面积测算方法 |
CN113409240A (zh) * | 2020-09-01 | 2021-09-17 | 山东省计算中心(国家超级计算济南中心) | 一种基于北斗定位数据的农机行为分析与作业面积统计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114662621A (zh) | 2022-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106407880B (zh) | 使用图像处理的存量、生长和风险预测 | |
EP3709238A1 (en) | Computer-generated accurate yield map data using expert filters and spatial outlier detection | |
CA3129643C (en) | Refined average for zoning method and system | |
CN113222991A (zh) | 基于深度学习网络的田间麦穗计数以及小麦产量预测 | |
CN114662621B (zh) | 基于机器学习的农机作业面积计算方法及系统 | |
CN110188657A (zh) | 基于卷曲叶片检测的玉米干旱识别方法 | |
Rahim et al. | Deep learning-based accurate grapevine inflorescence and flower quantification in unstructured vineyard images acquired using a mobile sensing platform | |
CN112241981B (zh) | 一种验证农作物种植面积二类测量数据精度的方法及装置 | |
CN114419367A (zh) | 一种农作物高精度制图方法及系统 | |
CN117178769B (zh) | 一种基于自动化的园林植物养护方法及系统 | |
CN111582035B (zh) | 一种果树树龄识别方法、装置、设备及存储介质 | |
Chaudhary et al. | A critical review on hybrid framework for precise farming with application of Machine Learning (ML) and Internet of Things (IoT) | |
Jiang et al. | Predicting spatiotemporal yield variability to aid arable precision agriculture in New Zealand: A case study of maize-grain crop production in the Waikato region | |
CN112329733A (zh) | 一种基于gee云平台的冬小麦长势监测及分析方法 | |
CN114842326B (zh) | 一种免定标檀香树植株缺苗定位方法 | |
CN113011220A (zh) | 穗数识别方法、装置、存储介质及处理器 | |
CN111007474A (zh) | 一种基于多特征的天气雷达回波分类方法 | |
Chu Su | Statistical geocomputing: Spatial outlier detection in precision agriculture | |
Zang et al. | Estimation of Density and Height of Winter Wheat Varieties Using Unmanned Aerial Vehicles Images | |
Yahya et al. | Tree-mapping Technique as a Computer System for Sustainable Forest Management | |
Bai et al. | Estimating leaf age of maize seedlings using UAV-based RGB and multispectral images | |
Stefanelli et al. | DigiRoot (TM): new software for root studies | |
CN112800929B (zh) | 一种基于深度学习的竹笋数量与高生长率在线监测方法 | |
CN116805395B (zh) | 农业保险标的物的核验方法、装置、系统和存储介质 | |
CN117151354A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |