CN116188317A - 一种基于斜拍图像获取植物工厂内生菜生长信息的方法 - Google Patents
一种基于斜拍图像获取植物工厂内生菜生长信息的方法 Download PDFInfo
- Publication number
- CN116188317A CN116188317A CN202310209190.7A CN202310209190A CN116188317A CN 116188317 A CN116188317 A CN 116188317A CN 202310209190 A CN202310209190 A CN 202310209190A CN 116188317 A CN116188317 A CN 116188317A
- Authority
- CN
- China
- Prior art keywords
- lettuce
- images
- image
- information
- plant factory
- 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
- 241000208822 Lactuca Species 0.000 title claims abstract description 186
- 235000003228 Lactuca sativa Nutrition 0.000 title claims abstract description 186
- 230000012010 growth Effects 0.000 title claims abstract description 52
- 241000196324 Embryophyta Species 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012549 training Methods 0.000 claims abstract description 32
- 230000011218 segmentation Effects 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 4
- 230000006870 function Effects 0.000 claims description 73
- 238000000605 extraction Methods 0.000 claims description 27
- 238000012360 testing method Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000006073 displacement reaction Methods 0.000 claims description 4
- 238000011176 pooling Methods 0.000 claims description 4
- 238000009434 installation Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 230000004215 skin function Effects 0.000 claims description 3
- 235000013311 vegetables Nutrition 0.000 claims description 3
- 238000003062 neural network model Methods 0.000 claims description 2
- 230000002708 enhancing effect Effects 0.000 claims 1
- 238000010276 construction Methods 0.000 abstract description 4
- 238000013527 convolutional neural network Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000002372 labelling Methods 0.000 abstract description 2
- 238000001514 detection method Methods 0.000 abstract 1
- 230000008635 plant growth Effects 0.000 abstract 1
- 238000012216 screening Methods 0.000 abstract 1
- 235000021384 green leafy vegetables Nutrition 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 239000006071 cream Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000010219 correlation analysis Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000005303 weighing Methods 0.000 description 2
- 229910000838 Al alloy Inorganic materials 0.000 description 1
- 235000015802 Lactuca sativa var crispa Nutrition 0.000 description 1
- 240000004201 Lactuca sativa var. crispa Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003245 coal Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010791 quenching Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- 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/0002—Inspection of images, e.g. flaw detection
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于斜拍图像获取植物工厂内生菜生长信息的方法,该方法采用相机按照特定的倾斜角度拍摄植物工厂内的生菜,然后对获取的生菜图像进行预处理,处理流程包括:数据标注、mask‑rcnn实例分割模型训练、数据筛选、单株生菜数据集的构建,对获取的图像进行图像处理操作,获取生菜的部分表型特征(倾斜投影面积、颜色信息、纹理复杂度),并使用卷积神经网络训练鲜重估计模型,实现对生菜的生长检测。本发明解决了植物工厂种植架这种封闭且非开放式空间内获取作物生长信息困难的问题,并且具有准确度高、效率高的特点,有助于推进无人植物工厂的建设,为智能农业赋能。
Description
技术领域
本发明涉及智慧农业领域,具体涉及一种基于斜拍图像获取植物工厂内生菜生长信息的方法。
背景技术
采用数字图像无损获取作物的生长信息,在现有技术中常常采用侧视图或者俯视图来进行研究。研究者通常取作物的正侧视面或者正俯视面,可以以此获得作物的高度信息和冠层投影面积。然而,植物工厂作为典型的垂直农业,使用了立体种植架进行作物栽培,并且进行严格的生长环境管控。为了更高的单位面积产量和更高效的能源转化效率,种植架层与层之间的间距通常设置较为紧密,这意味着作物的生长区域十分有限,在垂直方向上,很难再有多余的空间安装成像系统,并且植物工厂采用的是人工光带,获取正俯视图在顶部架设的图像信息,然而获取设备可能会遮挡作物生长所需的光线,这会影响作物的正常生长。而将获取设备设置在正侧方,因为植株种植密度的原因,拍摄图像中的作物存在严重的遮挡问题,正侧视图仅仅能够监测到最外侧的作物。综上所述,受限于植物工厂的结构,采用常规的通过对植物工厂的植物拍摄正侧视图和正俯视图的方式难以获取作物生长信息。
发明内容
本发明在于克服现有技术的不足,提供了一种基于斜拍图像获取植物工厂内生菜生长信息的方法,所述方法采用斜拍的方式,解决了植物工厂内获取作物生长信息困难的问题,并通过神经网络的方式,修补了斜拍的畸变问题,具有准确度高、效率高的优点,从而有助于推进无人植物工厂的建设,为智能农业赋能。
本发明用于解决现有技术问题的技术方案是:
一种基于斜拍图像获取植物工厂内生菜生长信息的方法,包括以下步骤:
S1:使用相机通过斜拍的方式获取植物工厂内生菜的生长图像;
S2:将获取到的生长图像送入实例分割模型中分割出单株生菜图像;
S3:将分割出的单株生菜图像进行识别,识别出前四排的生菜图像;
S4:将识别出的生菜图像送入特征提取模型中,通过特征提取的方式得到倾斜投影面积、周长、颜色信息和纹理特征;
S5:将识别出的生菜图像送入鲜重估计模型中估算生菜的鲜重值;
S6:输出对应生菜的生长信息,该生长信息包括生菜特征和生菜鲜重值。
优选的,在步骤S1中,获取植物工厂内的生菜生长图像的步骤为:
S11:根据所要检测生菜的类型和规模,调整相机的安装位置和斜拍角度,架设图像获取平台;
S12:定时、定点拍摄全生长周期的生菜图像,并同时记录所拍摄生菜的鲜重值。
优选的,在步骤S2中,所述实例分割模型的分割步骤为:
S21:收集生菜的斜拍图像后,利用LabelMe数据标注软件对斜拍图像进行数据标注工作,标注类型分为两个类,分别是单株生菜图像(1)和背景(0);其中,标注的斜拍图像只需要覆盖需要监测的区域,后排包含生菜的区域则使用像素替换,并将该区域的像素值置为0;
S22:使用OpenCV对数据集进行数据增强,得到标注数据集;
S23:将得到的标注数据集以8:2的比例划分训练集和测试集;
S24:将划分好的训练集和测试集送入集成模型MMDetection内置的Mask-RCNN实例分割模型的数据列表中,并进行模型的训练;
S25:调用Mask-RCNN实例分割模型和训练好的pth文件模型参数,处理所有收集到的生菜图像;
S26:更改集成模型MMDetection的使用函数,将输出的tensor列表变量使用numpy函数库的where函数,提取出里面每一个生菜所代表面积的数据;使用numpy函数库的array函数,将编码的数值转换为8进制的格式;
S27:将得到的原图大小的蒙版图像和原始图像使用OpenCV的bitwise_or函数提取共同覆盖的区域,最终得到单株生菜的图像,该图像保留了单株生菜图像在原始图像的位置信息。
优选的,在步骤S22中,数据增强的操作包括颜色空间转化、增加噪声、水平翻转、更改明暗度。
优选的,在步骤S24中,输入的图像尺寸为1333ppix800ppi,学习率设置为0.02,batchsize设置为32,使用SGD作为损失函数。
优选的,在步骤S3中,识别前四排的生菜图像的步骤为:
S31:使用OpenCV的findCounters函数识别生菜区域;
S32:使用OpenCV的minAreaRect函数找到生菜区域的最小外接矩形;
S33:计算出最小外接矩形的中心点作为生菜的坐标(x,y),计算公式如下
P1=(x1,y1);
P2=(x2,y2);
P3=(x3,y3);
P4=(x4,y4);
式中,P1,P2,P3,P4分别为识别出的最小外接矩阵的四个顶点的坐标,则单株生菜的中心坐标为:
式中,xi为矩形四个角点的x坐标值的集合,yi为矩形四个角点的y坐标值的集合;
S33:对单张原始图像中的所有的单株生菜图像使用步骤S31-步骤S33,以此收集每个单株生菜的中心坐标;
S34:使用K值聚类法,将所有单株生菜的中心点的纵坐标值,根据纵坐标值的大小,分为不同的类别,最终取y值最大的4组,作为前四排的生菜图像输出;
S35:将输出的前四排的生菜图像输入ByteTrack算法模型中,进行多目标追踪来避免视频流的重复计数。
优选的,在步骤S4中,所述特征提取模型的特征提取步骤为:
S41:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的contourArea函数计算生菜的投影面积;
S42:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的cvtColor函数、count函数计算出生菜的颜色特征,所述的颜色特征包含rgb、hsv、ycrcb、hls、lab、luv六个图像空间的总像素值的均值和中位数,其中,均值的计算公式如下:
式中:X为原始图像单通道的像素值;N为生菜区域的像素数量;
S43:根据步骤S31中识别出的生菜区域,使用skimage函数库feature.graycoprops函数、feature.graycoprops函数、feature.graycoprops函数计算生菜的纹理特征;
S44:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的arcLength函数计算生菜的周长。
优选的,在步骤S4中,对生采的鲜重进行估计的步骤为:
S51:使用步骤S3中提取的目标区域的单株生菜图像,将单株生菜与其真实的鲜重值相对应,构建鲜重估计的数据集;
S52:构建的数据库进行数据增强操作;
S53:将增强的数据集放入构建的Disnet模型中进行训练;输入为224ppix224ppi的图像,输出为估计的生菜鲜重值,真实值为实际测量的生菜鲜重值,采用MSELoss函数作为损失函数,训练出鲜重估计模型;
S54:将步骤S3中提取的前四排生菜图像依次送入训练好的鲜重估计模型中,得到估计的鲜重值。
优选的,在步骤S52中,所述的数据增强操作的增强类型为:水平翻转、增加噪点、明暗度改变和生菜图像在背景中水平位移。
本发明与现有技术相比具有以下的有益效果:
1、本发明的基于斜拍图像获取植物工厂内生菜生长信息的方法通过采用斜拍的角度来获取植物工厂内的生菜的生长信息,从而解决了俯拍效率低、侧拍则会导致生菜容易被遮挡的问题,进而解决了植物工厂这种密闭非开放空间获取作物信息难的问题。
2、本发明的基于斜拍图像获取植物工厂内生菜生长信息的方法采用基于卷积神经网络的方法构建回归模型,并针对斜拍这种方式构建了Disnet网络,通过大量的数据进行训练,解决了斜拍图像的透视畸变问题,提高了鲜重估计的准确性,从而提升了生长信息获取的效率。
附图说明
图1为本发明的基于斜拍图像获取植物工厂内生菜生长信息的方法中所采用的实验室的示意图。
图2为图像采集系统的示意图。
图3为对图像中的单株生菜进行标注的示意图。
图4为水平翻转处理的图像。
图5为更改明暗度处理的图像。
图6为增加噪点后的图像。
图7为颜色空间转化后的图像。
图8为实例分割模型的损失函数。
图9为实例分割模型的准确度曲线。
图10为原始图像。
图11为将图10中的原始图像通过实例分割模型提取的单株生菜图像。
图12为通过ByteTrack算法进行目标追踪后的效果图。
图13为用于体现训练集表现的示意图。
图14为Disnet网络架构图。
图15为本发明的基于斜拍图像获取植物工厂内生菜生长信息的方法的流程示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
参见图1-图15,本发明的基于斜拍图像获取植物工厂内生菜生长信息的方法,包括以下步骤:
S1:使用相机通过斜拍的方式获取植物工厂内生菜的生长图像;
S2:将获取到的生长图像送入实例分割模型中分割出单株生菜图像;
S3:将分割出的单株生菜图像进行识别,识别出前四排的生菜图像;
S4:将识别出的生菜图像送入特征提取模型中,通过特征提取的方式得到倾斜投影面积、周长、颜色信息和纹理特征;
S5:将识别出的生菜图像送入鲜重估计模型中估算生菜的鲜重值;
S6:输出对应生菜的生长信息,该生长信息包括生菜特征和生菜鲜重值。
在步骤S1中,获取植物工厂内的生菜生长图像的步骤为:
S11:根据所要检测生菜的类型和规模,调整相机的安装位置和斜拍角度,架设图像获取平台;
S12:定时、定点拍摄全生长周期的生菜图像,并同时记录所拍摄生菜的鲜重值。
在步骤S2中,所述实例分割模型的实例分割步骤为:
S21:收集生菜的斜拍图像后,利用LabelMe数据标注软件对斜拍图像进行数据标注工作,标注类型分为两个类,分别是单株生菜图像(1)和背景(0);其中,标注的斜拍图像只需要覆盖需要监测的区域,后排包含生菜的区域则使用像素替换,并将该区域的像素值置为0;
S22:使用OpenCV对数据集进行数据增强,得到标注数据集;
S23:将得到的标注数据集以8:2的比例划分训练集和测试集;
S24:将划分好的训练集和测试集送入集成模型MMDetection内置的Mask-RCNN实例分割模型的数据列表中,并进行模型的训练;
S25:调用Mask-RCNN实例分割模型和训练好的pth文件模型参数,处理所有收集到的生菜图像;
S26:更改集成模型MMDetection的使用函数,将输出的tensor列表变量使用numpy函数库的where函数,提取出里面每一个生菜所代表面积的数据;使用numpy函数库的array函数,将编码的数值转换为8进制的格式;
S27:将得到的原图大小的蒙版图像和原始图像使用OpenCV的bitwise_or函数提取共同覆盖的区域,最终得到单株生菜的图像,该图像保留了单株生菜图像在原始图像的位置信息。
在步骤S22中,数据增强的操作包括颜色空间转化、增加噪声、水平翻转、更改明暗度。
在步骤S24中,输入的图像尺寸为1333ppix800ppi,学习率设置为0.02,batchsize设置为32,使用SGD作为损失函数。
在步骤S3中,识别前四排的生菜图像的步骤为:
S31:使用OpenCV的findCounters函数识别生菜区域;
S32:使用OpenCV的minAreaRect函数找到生菜区域的最小外接矩形;
S33:计算出最小外接矩形的中心点作为生菜的坐标(x,y),计算公式如下
P1=(x1,y1);
P2=(x2,y2);
P3=(x3,y3);
P4=(x4,y4);
式中,P1,P2,P3,P4分别为识别出的最小外接矩阵的四个顶点的坐标,则单株生菜的中心坐标为:
式中,xi为矩形四个角点的x坐标值的集合,yi为矩形四个角点的y坐标值的集合;
S33:对单张原始图像中的所有的单株生菜图像使用步骤S31-步骤S33,以此收集每个单株生菜的中心坐标;
S34:使用K值聚类法,将所有单株生菜的中心点的纵坐标值,根据纵坐标值的大小,分为不同的类别,最终取y值最大的4组,作为前四排的生菜图像输出;
S35:将输出的前四排的生菜图像输入ByteTrack算法模型中,进行多目标追踪来避免视频流的重复计数。
在步骤S4中,所述特征提取模型的特征提取步骤为:
S41:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的contourArea函数计算生菜的投影面积;
S42:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的cvtColor函数、count函数计算出生菜的颜色特征,所述的颜色特征包含rgb、hsv、ycrcb、hls、lab、luv六个图像空间的总像素值的均值和中位数,其中,均值的计算公式如下:
式中:X为原始图像单通道的像素值;N为生菜区域的像素数量;
S43:根据步骤S31中识别出的生菜区域,使用skimage函数库feature.graycoprops函数、feature.graycoprops函数、feature.graycoprops函数计算生菜的纹理特征;
S44:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的arcLength函数计算生菜的周长。
在步骤S4中,对生采的鲜重进行估计的步骤为:
S51:使用步骤S3中提取的目标区域的单株生菜图像,将单株生菜与其真实的鲜重值相对应,构建鲜重估计的数据集;
S52:构建的数据库进行数据增强操作;
S53:将增强的数据集放入构建的Disnet模型中进行训练;输入为224ppix224ppi的图像,输出为估计的生菜鲜重值,真实值为实际测量的生菜鲜重值,采用MSELoss函数作为损失函数,训练出鲜重估计模型;
S54:将步骤S3中提取的前四排生菜图像依次送入训练好的鲜重估计模型中,得到估计的鲜重值。
在步骤S52中,所述的数据增强操作的增强类型为:水平翻转、增加噪点、明暗度改变和生菜图像在背景中水平位移。
具体实施案例:
本发明的基于斜拍图像获取植物工厂内生菜生长信息的方法,包括如下步骤:
步骤一、获取植物工厂内生菜得生长图像;
2022年7月,在华南农业大学建设的小型植物工厂中(参见图1),搭建了图像获取平台(参见图2),拍摄红奶油生菜的生长图像。其中,植物工厂的种植架内放置了4个种植盘,种植盘之间并行排列、高度一致,且每个种植盘采用4×8的种植穴进行叶菜种植。摄像平台使用铝型材固定于种植区侧面,平台架设在距离种植盘的顶部36cm、距离种植架36cm的位置处,摄像头垂直面对种植区,以21°的俯角进行拍摄。相机采用S50-IMX291型号的相机,拍摄的图像像素为3840x2160,视频画面的像素为1080x720,帧数为30帧。从可以肉眼看到幼苗长出种植口开始,大约在移植后4天,每天早上10-11点进行拍摄,一直拍摄到叶菜大量封行后停止拍摄。选取了14个点位进行定点拍照,分成了三段录制视频。在拍摄图像的同时进行单株叶菜的鲜重检测。其中的称重仪器采用帝衡公司的JCS-3103C型号的精密电子秤,精度为0.001。拍摄图像后立马进行称重的实验,最后根据拍摄的点位,记录生菜的鲜重信息和生长位置;最终获取了叶菜6-21天的图像信息和鲜重信息,共包含224张图片和48个视频。
步骤二、训练实例分割模型,分割出单株生菜图像;
1、对原始图像使用LabelMe软件进行数据标注工作,并使用黑色蒙版将后四排区域的生菜图像遮住,最终得到220张带有标签的图片,包含4473个生菜标记框,标签类型如图3所示;
2、使用颜色空间转化、增加噪声、水平翻转、更改明暗度这几种方式对图像进行了数据增强,最终得到了2420张图像和对应的json标签文件;其中,增强数据集类型展示如图4-7所示:其中,图4为水平翻转处理的图像,图5为更改明暗度处理的图像;图6为增加噪点后的图像;图7为颜色空间转化后的图像。
3、将最终的数据集以训练集和测试集8:2的比例进行划分,并送入实例分割模型进行训练,其中,输入模型的图像尺寸为1333x800,学习率设置为0.02,batchsize设置为32,使用SGD作为损失函数,训练的epoch设置为24,最终模型训练结果中的损失曲线如图8所示,准确度曲线如图9所示;实例分割模型训练结果为:
评价指标 | Mmap | mAP@0.5 | mAP@0.75 |
数值 | 0.821 | 0.979 | 0.937 |
上表中:
Mmap:均值平均精度;
map@0.5:I ou阈值为0.5下的均值平均精度值;
map@0.75:I ou阈值为0.75下的均值平均精度值;
4、利用训练好的实例分割模型提取单株生菜的图像,保存为jpeg格式(参见图10-图11)。
步骤三、识别出前四排的生菜图像;
1、计算提取生菜图像在原始图像中的位置坐标;
2、将坐标中的y坐标值送入python函数库的K值聚类算法中,并将分类好的y值最大的4类对应坐标的生菜图像返回;
3、返回的生菜图像对应的像素框信息送入ByteTrack算法模型中,进行目标追踪,其中,效果如图12所示。
步骤四、提取表型特征;
利用OpenCV函数库内置的计算函数,最终获得了1024株生菜的投影面积、周长、颜色特征、纹理特征,共计40个表型特征,部分数据展示如下:
步骤五、鲜重估计
1、人工将提取的单株红奶油生菜图像与其对应的真实鲜重值进行对应,构建了训练鲜重估计模型的数据集,数据集包含红奶油生菜的rgb图像以及记录图像真实鲜重值的excel表格,以图像储存位置作为索引,构建的部分txt数据集部分数据集信息如下;
2、将构建的数据集进行数据增强操作,主要的增强类型为:水平翻转、增加噪点、明暗度改变和生菜图像在背景中水平位移,数据集由原来的1024张图像增加为5012张图像。
3、将数据集送入构建的Disnet模型中进行训练,输入为增前后的图像,大小为224x224,输出为估计的鲜重值。这里采用pytorch框架下内置的VGG16模型进行训练,学习率采用淬火的方式,在150个epoch之前使用0.001的学习率,之后使用0.00001的学习率进行训练,一共进行了500个epoch。Batchsize设置为12,采用MSELoss函数作为损失函数。训练结果如图13所示,其中,图13为测试集的表现:训练集上的决定系数为0.9730,测试集上的决定系数为0.9223;
4、将步骤四提取表型特征的图像同时送入训练好的Disnet模型中进行鲜重估计,并将估计的鲜重值与提取的表型特征同时输出,作为监测结果。
在本实施例中,所述的构建Disnet网络,具体步骤如下:
S1:进行理论分析;需要在神经网络中添加能够提取位置信息的模块,同时也需要提取浅层信息的模块,最后将浅层信息和位置信息的数据进行融合,使用全连接层进行输出;其中,位置信息提取模块选用Resnet18作为主干网络。将Resnet结构32倍下采样的输出进行两次平均池化操作,得到深层的语义信息,并将此语义信息和32倍下采样的输出、以及16倍下采样的输出进行融合,共同组成位置信息提取模块;浅层信息提取模块主要由三个卷积层组成。通过简单的卷积操作,提取生菜图像的颜色、纹理、形状等特征信息,并且最大限度保证了图像的空间信息;
S2:融合位置信息提取模块的输出和浅层信息提取模块的输出,使用两次最大池化和两次卷积操作对提取的特征进行学习,并且对数据进行降维。最后通过三层全连接层输出估计的斜拍图像的鲜重值;其中,整体网络架构如图14所示;
为了评估该模型的效果,同时训练比较了类似的其他比较成熟的深度学习网络,将其他网络的准确率与Disnet网络进行对比。结果如下表所示:
通过选取了VGG、Resnet、Densenet三个模型作为本实施例中的Disnet网络的对比。因为Disnet的网络结构中,特征提取网络的结构类似于VGG,而位置信息提取的结构就是直接使用的Resnet中间层的输出。此外,Densenet是一种密集连接卷积神经网络,采用密集连接的方式将前面所有层的特征图直接连接到后面的层中。这种密集连接的方式可以加强特征的传递和重用,提高网络的训练效率和精度。这种特征传递的结构,类似于Disnet结构的位置信息提取模块。因此在这里将以上三个较为成熟的神经网络模型作为Disnet模型的对比。
从结果来看,Densenet的数据最好,但是它在训练集的表现很高达到0.99,但是测试集较低,这是出现了过拟合的现象。相较其它的模型,本实施例中的Disnet网络模型在训练准确度和测试准确度上都表现很好,证实了我们构建模型的合理性和高效性。
进行鲜重估计的数据分析。对分割后的温室生菜图像进行了特征提取后,将单株叶菜图像、叶菜的真实鲜重和提取的特征信息对应起来,利用orange的相关性分析方法(这里是用的是pearson相关系数分析),获得了各个变量特征与鲜重的相关性。结果显示,鲜重信息与倾斜投影面积的相关性系数为0.57,与周长的相关性系数为0.53,除此之外,鲜重信息和纹理特征等均具备较高的相关性。进一步研究发现,提取单排生菜图像的特征信息建立与鲜重数值的相关性分析,相关性系数最高达到0.98。以第四排的数据为例,第四排图像的鲜重值与提取的倾斜投影面积之间的相关性系数为0.96,与周长的相关性系数为0.86,纹理特征均在0.9以上。这也侧面印证了表型分析的正确性,叶菜的鲜重的确与表面积、颜色信息和纹理特征有关。而这些特征是卷积神经网络所擅长学习的,所以基于卷积神经的回归模型估计叶菜鲜重具备很高的可行性。
从理论上分析,叶菜移栽到生长区5天后开始需要介入观察(叶片才能长出洞口)。叶菜的整个生长发育有着显著的外形改变,从开始的3、4片叶片,逐渐长到10-20片叶片,叶面积也会显著变化。在图像中的体现就是叶菜图像面积变大,由于叶片变多,图像的复杂度也会显著增高。对于具体的图像数据而言,还可能体现在叶菜阴影面积更多,叶片颜色更深等。这意味着需要收集图像的深层信息特征,以此表征图像复杂度、阴影特征等纹理特征信息。不仅如此,由于采用侧拍的拍摄方式,透视畸变不可避免的存在,这会造成图像近大远小,且存在一定的变形。但好在这种变化是微弱的,因为选取的前四排的图像进行预测,直线距离不足2米。同时这种畸变是有一定规律的,符合透视定理,属于双线性变化,这种变化是可以通过深度学习学习出来的。因此需要保留图像的位置信息,这需要在制作数据集时保留叶菜在原始图像中的位置。在设计网络时,需要考虑将浅层信息融合。
上述为本发明较佳的实施方式,但本发明的实施方式并不受上述内容的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、块合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.一种基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,包括以下步骤:
S1:使用相机通过斜拍的方式获取植物工厂内生菜的生长图像;
S2:将获取到的生长图像送入实例分割模型中分割出单株生菜图像;
S3:将分割出的单株生菜图像进行识别,识别出前四排的生菜图像;
S4:将识别出的生菜图像送入特征提取模型中,通过特征提取的方式得到倾斜投影面积、周长、颜色信息和纹理特征;
S5:将识别出的生菜图像送入鲜重估计模型中估算生菜的鲜重值;
S6:输出对应生菜的生长信息,该生长信息包括生菜特征和生菜鲜重值。
2.根据权利要求1所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S1中,获取植物工厂内的生菜生长图像的步骤为:
S11:根据所要检测生菜的类型和规模,调整相机的安装位置和斜拍角度,架设图像获取平台;
S12:定时、定点拍摄全生长周期的生菜图像,并同时记录所拍摄生菜的鲜重值。
3.根据权利要求2所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S2中,所述实例分割模型的分割步骤为:
S21:收集生菜的斜拍图像后,利用LabelMe数据标注软件对斜拍图像进行数据标注工作,标注类型分为两个类,分别是单株生菜图像(1)和背景(0);其中,标注的斜拍图像只需要覆盖需要监测的区域,后排包含生菜的区域则使用像素替换,并将该区域的像素值置为0;
S22:使用OpenCV对数据集进行数据增强,得到标注数据集;
S23:将得到的标注数据集以8:2的比例划分训练集和测试集;
S24:将划分好的训练集和测试集送入集成模型MMDetection内置的Mask-RCNN实例分割模型的数据列表中,并进行模型的训练;
S25:调用Mask-RCNN实例分割模型和训练好的pth文件模型参数,处理所有收集到的生菜图像;
S26:更改集成模型MMDetection的使用函数,将输出的tensor列表变量使用numpy函数库的where函数,提取出里面每一个生菜所代表面积的数据;使用numpy函数库的array函数,将编码的数值转换为8进制的格式;
S27:将得到的原图大小的蒙版图像和原始图像使用OpenCV的bitwise_or函数提取共同覆盖的区域,最终得到单株生菜的图像,该图像保留了单株生菜图像在原始图像的位置信息。
4.根据权利要求3所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S22中,数据增强的操作包括颜色空间转化、增加噪声、水平翻转、更改明暗度。
5.根据权利要求3所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S24中,输入的图像尺寸为1333ppix800ppi,学习率设置为0.02,batchsize设置为32,使用SGD作为损失函数。
6.根据权利要求3所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S3中,识别前四排的生菜图像的步骤为:
S31:使用OpenCV的findCounters函数识别生菜区域;
S32:使用OpenCV的minAreaRect函数找到生菜区域的最小外接矩形;
S33:计算出最小外接矩形的中心点作为生菜的坐标(x,y),计算公式如下
P1=(x1,y1);
P2(x2,y2);
P3=(x3,y3);
P4=(x4,y4);
式中,P1,P2,P3,P4分别为识别出的最小外接矩阵的四个顶点的坐标,则单株生菜的中心坐标为:
式中,xi为矩形四个角点的x坐标值的集合,yi为矩形四个角点的y坐标值的集合;
S33:对单张原始图像中的所有的单株生菜图像使用步骤S31-步骤S33,以此收集每个单株生菜的中心坐标;
S34:使用K值聚类法,将所有单株生菜的中心点的纵坐标值,根据纵坐标值的大小,分为不同的类别,最终取y值最大的4组,作为前四排的生菜图像输出;
S35:将输出的前四排的生菜图像输入ByteTrack算法模型中,进行多目标追踪来避免视频流的重复计数。
7.根据权利要求3所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S4中,所述特征提取模型的特征提取步骤为:
S41:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的contourArea函数计算生菜的投影面积;
S42:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的cvtColor函数、count函数计算出生菜的颜色特征,所述的颜色特征包含rgb、hsv、ycrcb、hls、lab、luv六个图像空间的总像素值的均值和中位数,其中,均值的计算公式如下:
式中:X为原始图像单通道的像素值;N为生菜区域的像素数量;
S43:根据步骤S31中识别出的生菜区域,使用skimage函数库feature.graycoprops函数、feature.graycoprops函数、feature.graycoprops函数计算生菜的纹理特征;
S44:根据步骤S31中识别出的生菜区域,使用OpenCV函数库的arcLength函数计算生菜的周长。
8.根据权利要求3所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S4中,对生菜的鲜重进行估计的步骤为:
S51:使用步骤S3中提取的目标区域的单株生菜图像,将单株生菜与其真实的鲜重值相对应,构建鲜重估计的数据集;
S52:构建的数据库进行数据增强操作;
S53:将增强的数据集放入构建好的Disnet模型中进行训练;输入为224ppix224ppi的图像,输出为估计的生菜鲜重值,真实值为实际测量的生菜鲜重值,采用MSELoss函数作为损失函数,训练出鲜重估计模型;
S54:将步骤S3中提取的前四排生菜图像依次送入训练好的鲜重估计模型中,得到估计的鲜重值。
9.根据权利要求8所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S52中,所述的数据增强操作的增强类型为:水平翻转、增加噪点、明暗度改变和生菜图像在背景中水平位移。
10.根据权利要求8所述的基于斜拍图像获取植物工厂内生菜生长信息的方法,其特征在于,在步骤S53中,构建Disnet网络的步骤如下:
S531:在神经网络模型中添加位置信息提取模块和浅层信息提取模块,将提取到的浅层信息和位置信息进行融合,使用全连接层进行输出;其中,所述的位置信息提取模块选用Resnet 18作为主干网络;将Resnet结构32倍下采样的输出进行两次平均池化操作,得到深层的语义信息,并将深层的语义信息和32倍下采样的输出、以及16倍下采样的输出进行融合,共同组成位置信息提取模块;所述的浅层信息提取模块由三个卷积层组成,用于提取生菜图像的特征信息,并且保证图像的空间信息;
S532:融合位置信息提取模块的输出和浅层信息提取模块的输出,使用两次最大池化和两次卷积操作对提取的特征进行学习,并且对数据进行降维;接着通过三层全连接层输出估计的斜拍图像的鲜重值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310209190.7A CN116188317A (zh) | 2023-03-07 | 2023-03-07 | 一种基于斜拍图像获取植物工厂内生菜生长信息的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310209190.7A CN116188317A (zh) | 2023-03-07 | 2023-03-07 | 一种基于斜拍图像获取植物工厂内生菜生长信息的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116188317A true CN116188317A (zh) | 2023-05-30 |
Family
ID=86436447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310209190.7A Pending CN116188317A (zh) | 2023-03-07 | 2023-03-07 | 一种基于斜拍图像获取植物工厂内生菜生长信息的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116188317A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117433449A (zh) * | 2023-12-19 | 2024-01-23 | 南京农业大学三亚研究院 | 一种基于根盒的植物地上部与地下部表型联合鉴定方法 |
-
2023
- 2023-03-07 CN CN202310209190.7A patent/CN116188317A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117433449A (zh) * | 2023-12-19 | 2024-01-23 | 南京农业大学三亚研究院 | 一种基于根盒的植物地上部与地下部表型联合鉴定方法 |
CN117433449B (zh) * | 2023-12-19 | 2024-03-19 | 南京农业大学三亚研究院 | 一种基于根盒的植物地上部与地下部表型联合鉴定方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | A high-precision detection method of hydroponic lettuce seedlings status based on improved Faster RCNN | |
CN114120037B (zh) | 一种基于改进yolov5模型的发芽马铃薯图像识别方法 | |
CN110517311A (zh) | 基于叶片病斑面积的病虫害监测方法 | |
CN112766155A (zh) | 一种基于深度学习的海水养殖区提取方法 | |
CN114387520A (zh) | 一种用于机器人采摘的密集李子精准检测方法及其系统 | |
CN113470076B (zh) | 一种平养鸡舍黄羽鸡多目标跟踪方法 | |
Ji et al. | In-field automatic detection of maize tassels using computer vision | |
CN114818909A (zh) | 一种基于作物长势特征的杂草检测方法和装置 | |
CN116188317A (zh) | 一种基于斜拍图像获取植物工厂内生菜生长信息的方法 | |
CN113011221A (zh) | 作物分布信息的获取方法、装置及测量系统 | |
CN115661544A (zh) | 基于N-MobileNetXt的菠菜幼苗水分胁迫等级分类系统及方法 | |
CN115050020A (zh) | 一种基于改进Mask R-CNN草莓叶面积的智能视觉检测方法及系统 | |
Lyu et al. | Development of phenotyping system using low altitude UAV imagery and deep learning | |
CN114965501A (zh) | 基于冠层参数处理的花生病害检测与产量预测方法 | |
He et al. | Recognition of soybean pods and yield prediction based on improved deep learning model | |
Guo et al. | Panicle Ratio Network: streamlining rice panicle measurement by deep learning with ultra-high-definition aerial images in the field | |
Zhong et al. | Identification and depth localization of clustered pod pepper based on improved Faster R-CNN | |
CN117789037A (zh) | 作物生长期预测方法及装置 | |
CN114596509A (zh) | 一种基于机器视觉的水稻秧苗叶龄期识别方法 | |
CN113936019A (zh) | 一种基于卷积神经网络技术的大田作物产量估算方法 | |
Mohammadi et al. | Estimation of leaf area in bell pepper plant using image processing techniques and artificial neural networks | |
CN114463740A (zh) | 一种基于视觉分析的食物营养评估方法及系统 | |
CN116311066A (zh) | 一种植物工厂作物长势监测平台及方法 | |
CN116052141B (zh) | 作物生育期的识别方法、装置、设备及介质 | |
ZHANG et al. | Phenotypic parameter extraction for wheat ears based on an improved Mask-RCNN algorithm. |
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 |