基于图像处理技术对秸秆碎片的一种分析方法

2023-03-15 09:12耿欣董云哲孙玲谭杰徐慧磊于海涛李君兴
农业与技术 2023年5期
关键词:灰度像素秸秆

耿欣 董云哲 孙玲 谭杰 徐慧磊 于海涛 李君兴

(吉林省农业机械研究院,吉林 长春 130011)

引言

玉米是我国的主要谷物类农作物,据国家统计局发布数据,2021年全国全国谷物产量6.327亿t,其中玉米产量2.725亿t[1],占谷物产量的43.07%。每年到收获季节,都会产生大量的玉米秸秆,根据玉米秸秆系数1.04[2],则会产生大约2.834亿t的玉米秸秆。玉米秸秆属于农业生态系统中十分宝贵的生物质能资源,如何高效率、低成本利用玉米秸秆,已经成为农业科研中的研发热点[3]。

目前国内玉米秸秆的处理和利用主要有以下方法:燃烧燃料、粉碎还田、饲料化、燃烧发电、食用菌基料、手工艺品等[4-6]。玉米秸秆含有大量的营养元素[7],对玉米秸秆进行精细加工处理,制作成高营养牲畜饲料,不仅有利于发展畜牧业,而且通过秸秆过腹还田,更具有良好的生态效益和经济效益。随着我国畜牧业的快速发展,饲料精细化加工得到越来越广泛的重视,广大科研工作者为把秸秆加工成适口性好、牲畜爱吃的优质饲料做着不懈的努力。

揉丝与切碎是玉米秸秆饲料化的重要方法之一,由于是碎片颗粒分析,本文通过张玉荣等[8]基于Python-OpenCV对小麦不完善识别的研究,辨别小麦单个籽粒的完善性;刘星星等[9]基于OpenCV的动态葡萄干色泽实时识别,研究单个葡萄干的色泽,从而对葡萄干的品质进行分类等文献,总结出一种对秸秆碎片的分析方法。

1 试验平台的简介

1.1 样本试验平台的搭建

背景选择黑色不反光的试验平台,用白色纸胶带围成一个400mm×400mm的区域,其中中间区域有一排白色方片,尺寸分别为20mm×20mm、30mm×30mm、40mm×40mm、50mm×50mm、60mm×60mm,这些方片用作图像尺寸标定时的参照物,如图1所示。

图1 试验平台及标定方片

光源环境为荧光灯环绕光源即可,环绕光源照射均匀,有效地解决了物体产生的阴影,但光源不可直射平台,防止生成亮斑。

工业相机的位置为纸胶带围成区域的正上方,垂直照射,镜头平面距试验平台的距离为500mm,如图2所示。

1.环绕光源;2.相机支架;3.工业相机;4.试验平台;5.框架

1.2 图像采集需要的软硬件

电脑CPU为Corei7-9700;编程软件Python 3.8.10;工业摄像机及镜头,接口USB 3.0,免驱动,200万像素(1920×1080),30帧·s-1。

1.3 图像尺寸标定

通过图像处理分别得到白色方片的像素尺寸和像素面积,用像素尺寸、面积比上实际尺寸、面积,求得每个方片的尺寸、面积系数,5个方片的尺寸、面积系数再做平均得尺寸、面积的平均系数,把平均系数代入程序中即可求得碎片的实际尺寸和实际面积。

1.3.1 计算相机像素尺寸与实际尺寸的比值

相机像素尺寸与实际尺寸的比值如表1所示。

表1 像素尺寸与实际尺寸的比值ηc

1.3.2 计算相机像素面积与实际面积的比值

相机像素面积与实际面积的比值如表2所示。

表2 像素面积与实际尺寸的比值ηm

1.3.3 计算相机像素尺寸与面积的平均换算系数

把ηc与ηm分别代入式(1)中,求得尺寸与面积的平均换算系数。

(1)

式中,ηa为平均系数;ηi为每次测量得到的系数;n为测量的组数。

通过式(1)计算,得图像尺寸平均系数为2.54,即1mm≈2.54像素;图像面积平均系数为6.32,即1mm2≈6.32像素。

1.4 秸秆碎片样本处理方法

随机抓取秸秆碎片,平铺到试验平台上,需要剔除丝状碎片,以及不能代表大多数形状的碎片,如图4所示。因为这2种碎片形状不规则,而且有的细丝状碎片的宽度只占1个像素或者半个像素,造成识别错误,影响计算的准确性,所以该试验要去除这2种碎片,虽然会造成取样的不完整,但是不影响大部分碎片形状特征的归类。把筛选好的碎片均匀地平铺到试验台上,注意碎片之间不能相连,如图3所示。

图3 筛选之后待实验的碎片样本

图4 需要剔除碎片样式

2 基于python-opencv的图像处理

2.1 采集的RGB彩色图像转化为灰度图

采集的图片是RGB格式,为了提高计算速度,减少数据的处理量,需要把RGB格式的图片转化为灰度图像。灰度图像与RGB图像之间的转化有很多方法,本文使用的是其中一种较为常用的映射关系-加权平均法。计算如下:

Gray(x,y)=0.299×R(x,y)+0.59×G(x,y)

+0.114×B(x,y)

式中,Gray(x,y)表示灰度值;R(x,y)、G(x,y)、B(x,y)表示R、G、B分量值,3个加权系数0.299、0.59、0.114是根据人的亮度感知系统调节出来的参数,是个广泛使用的标准化参数,通过程序转化,得到灰度图,如图5所示。

2.2 灰度图的二值化处理

对获得的灰度图进行二值化处理,使秸秆碎片与背景分离,方便后续计算,灰度图二值化后,图像中只有2种灰度值,分别为0和255。

通过cv2.threshold函数的THRESH_BINARY方法,得到的二值图,如图6所示。

式中,dst(x,y)为输出图像中第x行第y列的灰度值;maxval为最大值,取值为255;src(x,y)为输入灰度图像中第x行第y列的灰度值;thresh为分割阈值。该公式的含义是输入灰度图像素的灰度值大于分割阈值,对应输出的二值图该像素位置灰度值为255;反之灰度值为0。该实验分割阈值为150。

图5 碎片样本灰度图

2.3 计算样本碎片的总数量

本文用cv2.findContours()函数,检测样本中碎片所占的像素,该函数输出的是像素坐标列表,图7显示的是部分像素坐标,其中每个碎片包含的像素坐标又被分成了独立项,通过len()函数可求出该列表中独立项的总数,即秸秆碎片总数。

2.4 计算每个碎片的投影面积

把碎片轮廓的像素坐标列表进行拆分,把各个项分解出来,每一项就是样本中的一个碎片,通过cv2.contourArea()函数,可求得每个碎片占多少个像素,通过前面得到的图像面积平均系数,像素数量除以6.32,可知碎片的实际投影面积,图8为部分碎片的外形尺寸。

图6 碎片样本二值图

图7 部分碎片像素的坐标列表

图8 部分碎片外形特征尺寸

2.5 计算每个碎片的最小外接矩形

通过cv2.minAreaRect()函数对每一个项进行处理,输出包括最小外接矩形4点坐标(box[0]、box[1]、box[2]、box[3])等信息的列表,通过式(2)和式(3)计算最小外接矩形的长度L像素值和宽度W像素值,见图9。通过前面得到的图像尺寸平均系数,像素数值除以2.54即可得到实际尺寸,该尺寸可以近似看作碎片的长度和宽度,同时用长度比宽度即可得到碎片的长宽比,见图8。通过cv2.drawContours和cv2.putText函数,对每个碎片的最小外接矩形进行可视化以及标记,见图10。

(2)

(3)

式中,box[n].x代表box[n]中x坐标值;box[n].y代表box[n]中y坐标值;n=1、2、3、4。

图9 最小外接矩形的坐标

图10 碎片的最小外接矩形及标号

2.6 平均值的计算

通过上述步骤,得到样本秸秆碎片的总数,以及每个碎片的长度、宽度、长宽比和面积,把每一项求和,再除以总数,可得到每一项的平均值,见图11。

2.7 面积范围,比例范围

根据该样本中每个碎片面积统计,并设定每100mm2为一个范围,程序自动把面积范围分为4组,通过分类算法,计算每个碎片所在范围,并求其范围内的碎片总数,见图12。

图11 所有碎片的平均数据

图12 碎片面积范围分布表

根据该样本中每个碎片长宽比统计,并设定比值每增加1为一个范围,程序自动把比值范围分为15组,通过分类算法,计算每个碎片所在范围,并求其范围内的碎片总数,见图13。

图13 碎片比例范围分布表

通过python绘图包matplotlib绘制面积及比例分布图,见图14、图15。通过柱状图可以更直观地看出该样本碎片面积主要分布在0~100mm2范围内,长宽比主要分布在2~5范围内。

图14 碎片面积范围分布条形图

图15 碎片比例范围分布条形图

3 结果和分析

利用该方法,可以快速地检测出秸秆碎片样本的碎片总量、每个碎片的投影面积、每个碎片的最小外接轮廓的长度、宽度以及长宽比,通过程序对这些数据进行统计整合,可以得到样本碎片的投影面积分布图,长宽比分布图。把杂乱的碎片进行数据可视化处理,可以系统地研究揉切机,多一个刀片、转速慢一点或者刀片间距大一点,对产生的秸秆碎片究竟有何影响,对揉切机的改进,提供数据依据。

猜你喜欢
灰度像素秸秆
赵运哲作品
采用改进导重法的拓扑结构灰度单元过滤技术
像素前线之“幻影”2000
基于灰度拉伸的图像水位识别方法研究
解读“一号文件”:推进秸秆综合利用
推广秸秆还田 有效培肥土壤
秸秆综合利用模式探索
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于灰度线性建模的亚像素图像抖动量计算
新型环保吸声材料——菌丝体胶合秸秆