发明内容
针对使用常规的阈值分割不能准确分割出木耳的颜色,导致后续不能准确的进行针对性的光照调整的问题,本发明提供一种基于智慧农业的食用菌环境检测方法:
获取大棚内所有的木耳图像;
对木耳图像进行边缘检测,得到木耳图像中由边缘线构成的外形轮廓区域;
获取每个外形轮廓区域的最大内接矩形区域,利用最大内接矩形区域内的每个像素点的位置坐标得到每个像素点的位置权重;
根据每个最大内接矩形区域内每个像素点及其邻域像素点与标准色的亮度差值,得到每个最大矩形区域内每个像素点的颜色权重;
根据每个最大内接矩形区域内每个像素点的位置权重值和颜色权重值,得到每个最大内接矩形区域内每个像素点的综合权重;
在每个最大内接矩形区域内中选取综合权重最大的像素点作为聚类中心,基于颜色权重进行聚类,得到每个外形轮廓区域中的聚类区域;
根据每个聚类区域中每个像素点与标准色的颜色相似度和预设的颜色相似度阈值,确定出每个聚类区域的颜色;
根据每个聚类区域的颜色判断是否需要调整环境光照。
所述利用最大内接矩形区域内的每个像素点的位置坐标得到每个像素点的位置权重的方法为:
以最大内接矩形区域的中心像素点为原点,对最大内接矩形区域内的每个像素点赋予坐标值;
将每个最大内接矩形区域内每个像素点的坐标值代入高斯函数,得到每个最大内接矩形区域内每个像素点的位置权重。
所述根据每个最大内接矩形区域内每个像素点及其邻域像素点与标准色的亮度差值,得到每个最大矩形区域内每个像素点的颜色权重的具体方法为:
以每个像素点为中心像素点,获取每个中心像素点的亮度值与标准色的亮度值的差值;
获取每个中心像素点的八邻域中每个邻域像素点的亮度值与标准色的亮度值的差值;
获取每个邻域像素点的亮度值与标准色的亮度值的差值和的差值的平方,将所有邻域像素点对应的和的差值的平方的均值,作为每个像素点的颜色权重。
所述根据每个最大内接矩形区域内每个像素点的位置权重值和颜色权重值,得到每个最大内接矩形区域内每个像素点的综合权重的方法为:
以每个像素点的颜色权重和位置权重的比值作为指数,以e为底数,得到指数幂,将指数幂的倒数作为每个像素点的综合权重。
所述在每个最大内接矩形区域内中选取综合权重最大的像素点作为聚类中心,基于颜色权重进行聚类,得到每个外形轮廓区域中的聚类区域的方法为:
从每个最大内接矩形区域的聚类中心像素点开始,将聚类中心点的邻域内的像素点依次按照颜色权重从小到大进行聚类为一个区域;
不断扩大邻域范围,并按照同样的方式聚类,直至遇到闭合区域边缘线像素点时停止聚类,得到每个外形轮廓区域中的聚类区域。
所述根据每个聚类区域中每个像素点与标准色的颜色相似度和预设的颜色相似度阈值,确定出每个聚类区域的颜色的方法为:
计算每个聚类区域中每个像素点的亮度值与标准色的亮度值的差值,将差值作为每个像素点与标准色的颜色相似度;
将所有像素点与标准色的颜色相似度的均值作为每个聚类区域与标准色的颜色相似度;
第i个聚类区域与标准色的颜色相似度为,若,则第i个聚类区域的颜色为黄褐色,若则第i个聚类区域的颜色为黑色,D为预设颜色相似度阈值,e为自然常数。
所述根据每个聚类区域的颜色判断是否需要调整环境光照的方法为:
将连续相邻的、颜色为黄褐色的聚类区域进行合并,得到多个黄褐色区域;
计算每个黄褐色区域的面积在所有木耳的面积中的占比;
若占比大于占比阈值,则对该黄褐色区域进行补光;否则,不进行补光。
本发明的有益效果是:
(1)获取木耳的RGB图像并转化到HSV空间得到木耳图像的HSV图像,并进行基于HSV图像的直方图均衡化,得到增强后的木耳的RGB图像;该方法克服了灰度直方图中频数较少的灰度级被合并的缺陷,克服了RGB图像中颜色连续性较差的缺陷;
(2)获取增强后的木耳图像中每个闭合区域的最大内接矩形区域,将每个最大内接矩形区域内每个像素点的坐标值代入高斯函数,得到每个像素点的位置权重;根据位置权重和颜色权重计算每个像素点的综合权重;将综合权重最大的像素点作为聚类中心,基于颜色相似度进行聚类,得到聚类区域;利用每个聚类区域与标准色的颜色相似度和相似度阈值,确定出每个聚类区域的颜色;该方法通过区域分割获取每个平滑的木耳区域,再通过颜色聚类,将分割后的木耳区域进行了二分类,克服了阈值分割靠单一灰度值无法分割出来的缺陷,提高了对木耳颜色判断的精度。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种基于智慧农业的食用菌环境检测方法的实施例,如图1所示,包括:
步骤一:获取大棚内所有的木耳图像;
该步骤的目的是,采集菌袋上的木耳图像,并进行预处理,得到不含背景的木耳图像。
其中,获取大棚内所有的木耳图像的方法为:
(1)由于木耳的生长环境较为复杂,所以对不同角度的木耳进行抽样调查,为不同高度的菌袋放置相机,随机抽样中高低三个不同角度的木耳菌袋旁放置工业相机,实时采集木耳图像,即木耳的RGB图像,采集时间为1天中的6点至18点,采集间隔为2小时;需要说明的是,每次采集后得到的木耳的RGB图像都按照本发明内容进行处理,判断其是否需要补光(每采集一次图像,就根据图像判断一次是否需要补光);
(2)木耳是将菌种和培养料装在菌袋中进行培育,所以生长出的木耳子实体采集到的图像中存在木耳、菌袋的多个背景,因此需要分割出木耳,方法为:
因此对采集到的木耳图像进行语义分割,采集到的图像包括菌袋背景区域和木耳区域,使用DNN网络识别图像中的木耳区域;
(3)对木耳区域图像进行增强:
将木耳子实体的RGB语义分割图像转换为HSV颜色空间,获取HSV颜色图像的H、S、V三个分量的直方图,对每一个分量直方图均进行一次直方图均衡化增强。具体步骤如下:
a.计算分量值分布频率:
获得各个分量直方图中各分量级出现像素的频率P:
式中,表示分量值为i(i的取值有H、S、V),且分量值的数值为k的像素频率,表示分量为i且分量值为k的像素数量,为分量为i的像素总数,H为色调,S为饱和度,V为亮度(明度)。
b.计算累计分布频率:
根据各个分量值出现的频率,累加获得分量累计分布频率Q:
式中,为分量i的累计分布频率,i的取值有H、S、V,为分量为i,且分量值的数值为k的像素频率,k为分量值,为分量i的最大分量值;
从k=0累加直到k=;当i取值为H时,表示在色调通道上(此时的分量为色调分量),色调值(分量值)为k的像素点出现的频率,当i取值为S时,表示在饱和度通道上(此时的分量为饱和度分量),饱和度值(分量值)为k的像素点出现的频率,当i取值为V时,表示在亮度通道上(此时的分量为亮度分量),亮度值(分量值)为k的像素点出现的频率;
c.将各分量值的累计分布频率归一化后四舍五入,得到映射关系:
为了得到增强后的图像与原始图像的分量值范围不发生改变,需要进行归一化处理,对归一化后的累计分布频率进行四舍五入,假设得到原始图像为m对应增强后为M的映射关系:
至此,对每一个HSV分量直方图都进行了直方图均衡化,对HSV图像的直方图均衡化弥补了对RGB图像和灰度图像中直方图均衡化颜色不均和灰度差异过小的缺陷,经过HSV直方图均衡化后的木耳图像更符合人眼视觉的感知,本发明进一步将增强后的木耳图像转化为灰度图像。
需要说明的是:
(1)要进行增强的原因是:由于木耳主要呈现黑色和黄褐色,但是并非绝对的黑色或黄褐色,存在介于黄褐色和黑色之间的颜色,这对于聚类分割或是阈值分割都有较大的困难,所以在进行聚类分割前对木耳子实体区域进行直方图均衡化增强;
(2)使用基于HSV图像进行直方图均衡化增强的原因为:
若使用常规的直方图均衡化增强建立在灰度直方图基础上,但是对于木耳本身颜色偏暗,且大多数情况下属于绝大多数都是黄褐色,或绝大多数都是黑色,这样一来使用灰度直方图均衡化不仅无法达到增强的效果,反而会使少数的颜色被合并而导致图像颜色信息缺失;若使用RGB图像进行直方图均衡化,但是RGB图像中会出现亮度滞留或不连续,且RGB图像分量无法诠释图像的具体空间像素与位点信息的分布情况,针对上述弊端,因此本发明采用基于HSV图像的直方图均衡化。
需要说明的是,由于木耳形状多种多样,且黑色与褐色的灰度差异很小,使用传统的阈值分割无法准确分割出黑色木耳和褐色木耳,导致后续不能针对性的对准确的褐色木耳区域进行光照调整;
如图2为采集的木耳图像,图3为采集的木耳图像的阈值分割图像,可以发现由于木耳形状多种多样,并且生长环境复杂,常规的阈值分割是无法准确分割出黑色木耳区域和褐色木耳区域的。
步骤二:对木耳图像进行边缘检测,得到木耳图像中由边缘线构成的外形轮廓区域;获取每个外形轮廓区域的最大内接矩形区域,利用最大内接矩形区域内的每个像素点的位置坐标得到每个像素点的位置权重;
该步骤的目的是,利用边缘线将木耳图像中的木耳分割为多个区域,并在每个闭合区域内部构建最大内接矩形,利用高斯函数获取闭合区域内每个像素点的位置权重。
其中,木耳图像中由边缘线构成的外形轮廓区域的获取方法为:
在灰度图像中先进行canny算子边缘检测,在边缘检测的结果图上得到边缘线构成的木耳的外形轮廓区域;
其中,每个最大内接矩形区域内每个像素点的位置权重的获取方法为:
由于聚类中心选择是否合适对于后续聚类的速度和效果有很大影响,并且要使聚类中心能够位于聚类区域的中心,位于像素最接近黄色且周围像素也最接近黄色的位置,因此:
(1)构建每个木耳外形轮廓区域的最大内接矩形,获取最大内接矩形的尺寸NM;
(2)对最大内接矩形中的像素点按照高斯模型赋予位置权重值,具体过程为:
确定好最大内接矩形的尺寸后,将矩形区域的像素从中心像素开始依次重新赋予坐标值,中心像素为原点,因为聚类中心点要尽可能的落在区域中心,这样聚类时的速度会更快,所以矩形区域内像素的位置权重值从中心像素点开始依次朝外围递减,中心像素点的权重值最大,33邻域权重值较小,55邻域的比33邻域的更小,依次排列下去,这种情况是符合高斯模型的,高斯模型就是从中心点向外围高斯值递减,故确定好像素坐标后直接带入高斯函数即可求得每个点的高斯值作为每个像素点的位置权重值。
需要说明的是,本发明将获取灰度图像中边缘线构成的木耳的外形轮廓区域的二值图,其中木耳外形轮廓区域和最大内接矩形的像素点标记为1其他标记为0;
将灰度图像中边缘线构成的木耳的外形轮廓区域的二值图与木耳的HSV图像相乘,得到了木耳的HSV图像中的木耳的外形轮廓区域和最大内接矩形,进行后续分析。
步骤三:根据每个最大内接矩形区域内每个像素点及其邻域像素点与标准色的亮度差值,得到每个最大矩形区域内每个像素点的颜色权重;根据每个最大内接矩形区域内每个像素点的位置权重值和颜色权重值,得到每个最大内接矩形区域内每个像素点的综合权重;
该步骤的目的是,从像素点与黄褐色的颜色和像素点的位置两方面,综合分析,得到每个像素点作为聚类中心的权重,即聚类权重。
其中,根据每个最大内接矩形区域内每个像素点及其邻域像素点与标准色的亮度差值,得到每个最大矩形区域内每个像素点的颜色权重的方法为:
需要说明的是,本发明中的标准色为黄褐色,因为光照不足的木耳是黄褐色的,以其作为标准色进行对比,判断每个木耳区域的颜色。
对于矩形区域内每个像素点,选取其八邻域像素点,计算每个像素点的颜色权重:
以每个像素点为中心像素点,获取每个中心像素点的亮度值与标准色的亮度值的差值,即,76为标准色的亮度值;
获取每个中心像素点的八邻域中每个邻域像素点的亮度值与标准色的亮度值的差值,即;
计算每个邻域像素点对应的和的差值的平方,将所有邻域像素点对应的和的差值的平方的均值,作为每个中心像素点的颜色权重,也就是矩形区域内每个像素点的颜色权重:
公式中,为每个中心像素点的颜色权重,表示中心像素点的第i个邻域点的亮度值,V表示中心像素点的亮度值,76为标准色的亮度值,直接对比了中心点与标准色的差异和邻域各点与标准色的差异之间的差异,这样既能够表示出中心点与标准色之间的相似程度,又能将邻域各点与中心点的相似程度表现出来;
当中心点接近标准色后,会越小,当邻域点不接近标准色后,值越大,此时的值越大,反映像素与标准色的差异大,则作为聚类中心的权重就会变小;反之越大;最终中心像素与标准色的差异小,且邻域像素与标准色差异也小的像素点作为聚类中心的权重最大;
其中,根据每个最大内接矩形区域内每个像素点的位置权重值和颜色权重值,得到每个最大内接矩形区域内每个像素点的综合权重的方法为:
以每个像素点的颜色权重和位置权重的比值作为指数,以e为底数,得到指数幂,将指数幂的倒数作为每个像素点的综合权重,将综合权重作为聚类权重,公式如下:
公式中,为每个像素点的综合权重(聚类权重),为每个像素点的位置权重值(矩形区域每个像素点的基于坐标赋予的权重值),Ha为矩形区域每个像素点的颜色权重(基于颜色赋予的权重值),exp是以e为底的指数函数,的值为e的次方;由于越大越好,而Ha越小越好,二者呈反比例关系,故使用比值关系,exp()为归一化函数,便于后续选取阈值;
需要说明的是,本步骤在获取各点的位置权重值后计算内接矩形内各点的颜色差异,便于选取颜色最接近黄褐色的像素点以及周围点也更接近黄褐色的像素点。
步骤四:在每个最大内接矩形区域内中选取综合权重最大的像素点作为聚类中心,基于颜色权重进行聚类,得到每个外形轮廓区域中的聚类区域;
该步骤的目的是,根据每个像素点的聚类权重进行聚类,得到每个闭合区域中聚类区域。
其中,每个最大内接区域所在的闭合区域内的像素点基于颜色权重进行聚类,得到每个外形轮廓区域中的聚类区域的方法为:
(1)选取聚类中心点:当位置权重值越大且颜色权重值越大时,认为像素作为关键点的权重最大,最终在每个内接矩形内选择max(Ma)对应的点作为最终的聚类中心点;
(2)设定聚类规则:
考虑到木耳的形状是卷曲的,要想将黄褐色木耳分割出来,所以从每个矩形区域的聚类中心点开始聚类,将黄色像素点聚为一个区域;
聚类过程为:从聚类中心点的33邻域内依次按照颜色权重()从小到大进行聚类为一个区域,当33邻域聚类结束后再在55邻域上按照同样的方式聚类,后续依次扩大为77等等,不断扩大邻域不断使用同样方式聚类,当某个邻域聚类时触碰到边缘检测线(木耳的外形轮廓)上的像素点时,不对该点进行聚类,对其余点依旧聚类,直到遇到木耳外形轮廓区域的边缘检测线为止,得到每个外形轮廓区域中的聚类区域。
步骤五:根据每个聚类区域中每个像素点的颜色亮度与标准色的颜色亮度的距离,得到每个聚类区域与黄褐色的相似度;根据每个聚类区域中每个像素点与标准色的颜色相似度和预设的颜色相似度阈值,确定出每个聚类区域的颜色;根据每个聚类区域的颜色判断是否需要调整环境光照;
该步骤的目的是,对于步骤四中得到的聚类区域进行颜色二分类。
其中,根据每个聚类区域中每个像素点的颜色亮度与标准色的颜色亮度的距离,得到每个聚类区域与黄褐色的相似度的方法为:
计算每个聚类区域中每个像素点的亮度值与黄褐色的亮度值的差值(每个像素点的颜色亮度与标准色的颜色亮度的距离),即,并将差值的均值作为每个聚类区域与黄褐色的相似度,公式为:
式中,为第i个聚类区域与黄褐色的相似度,i为第i个聚类区域,k为第i个聚类区域内的第k个像素点,为第k个像素点的亮度值,76为标准色木耳的亮度值,n为第i个聚类区域内的像素数量,根据该计算公式得到各个像素点与标准色的颜色亮度距离,并对整个聚类区域的亮度距离进行求和取均值作为当前聚类区域与标准色木耳的颜色相似度。
其中,根据每个聚类区域中每个像素点与标准色的颜色相似度和预设的颜色相似度阈值,确定出每个聚类区域的颜色的方法为:
将图像中的各个聚类区域基于颜色相似度进行二分类,对于二分类,其默认阈值为0.5,因此,本实施例中预设颜色相似度阈值D为0.5,将颜色相似度的聚类区域分为一类,该类为黄褐色木耳区域,反之将的聚类区域分为另一类,另一类为黑色木耳区域;
其中,根据每个聚类区域的颜色判断是否需要调整环境光照的方法为:
因为检测出黄褐色的木耳,如果是一两个,对它进行针对性的补光是不现实的,也是没有意义的(因为大棚里面的每个光照灯的覆盖面积内都含有大量木耳,并且一两个黄褐色对整体影响不大,可以忽略),所以设置当出现连续的多个黄褐色木耳,当黄褐色木耳面积达到一个阈值时候,对该黄褐色区域进行补光操作:
将连续相邻的、颜色为黄褐色的聚类区域进行合并,得到多个黄褐色区域;计算每个黄褐色区域的面积在所有木耳的面积中的占比;若占比大于占比阈值,说明黄褐色木耳较多,对木耳整体质量影响较大,因此需要对该黄褐色区域进行补光;否则,说明黄褐色木耳较少,对木耳整体质量影响较小,可以忽略,因此,不进行补光,本发明中占比阈值为0.3,即在本发明中,认为当黄褐色木耳区域面积大于0.3时,对整体木耳质量影响较大,不可忽略,因此需要对其进行补光操作,保证木耳的质量,对于占比阈值,实施者可根据木耳的整体质量要求自行设定。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。