论文部分内容阅读
菌落计数在食品检测、环境保护和医疗卫生等领域都有重要应用,菌落计数算法大多需要处理复合菌落图像。复合菌落图像的菌种复杂,菌落形态学特征各不相同。基于灰度的传统菌落计数方法,以及市面上各种菌落分析仪在处理复合菌落图像时,均面临一定困境。当前菌落计数算法仅仅是对单张图像或者一段视频中的单帧图像进行处理,获取培养皿中连通域的数目进而计数,因此无法排除杂质或死菌对活体菌落计数的干扰。活体菌落计数是菌落分析的基础,通常还需要对菌落依照其培养特征进行分类分析。
对活体菌落进行计数,首先要建立序列菌落图像,即拍摄一个培养基在多个时间节点的图像;对序列菌落图像依次进行配准,调整图像位置;采用三相水平集算法对菌落图像分割,获取培养皿内部所有连通域;比较多个粘连连通域分割方法,选取最优方法分割粘连连通域;追踪记录每一个连通域的生长过程,按照时间次序建立每个连通域的面积特征集,排除面积一直不发生明显变化的连通域,即可获得对应活体菌落的连通域;最后对剩余的连通域进行计数,可准确获得培养基内部的活体菌落数目。
对活体菌落进行计数后,需要对菌落进行分类。提取出活体菌落对应连通域,归一化为同样尺寸的灰度图像;对归一化后的灰度图像进行数据扩增,建立训练集和测试集;构建卷积神经网络分类模型,对该模型进行训练并测试,选用参数最优的分类模型。实验中菌落五分类平均准确率达到了84.31%。
完成活体菌落计数与分类任务后,通过频域处理对图像旋转进行优化加速,通过OpenCV的CUDA库对菌落计数模块完成GPU优化加速,通过OpenMP使用多核CPU对粘连菌落分割进行加速。最后移植算法,将部分算法功能集成于菌落分析软件中。
本文设计的活体菌落智能计数和分类算法不仅可以准确地获取培养皿内部活体菌落的数目,排除杂质水渍的干扰,还能够实验人员依据需求,对菌落进行形态学分类。相比于现有的菌落分析算法或市面上现有的菌落分析软件,本文提出的算法在计数和分类方面都有优势。
对活体菌落进行计数,首先要建立序列菌落图像,即拍摄一个培养基在多个时间节点的图像;对序列菌落图像依次进行配准,调整图像位置;采用三相水平集算法对菌落图像分割,获取培养皿内部所有连通域;比较多个粘连连通域分割方法,选取最优方法分割粘连连通域;追踪记录每一个连通域的生长过程,按照时间次序建立每个连通域的面积特征集,排除面积一直不发生明显变化的连通域,即可获得对应活体菌落的连通域;最后对剩余的连通域进行计数,可准确获得培养基内部的活体菌落数目。
对活体菌落进行计数后,需要对菌落进行分类。提取出活体菌落对应连通域,归一化为同样尺寸的灰度图像;对归一化后的灰度图像进行数据扩增,建立训练集和测试集;构建卷积神经网络分类模型,对该模型进行训练并测试,选用参数最优的分类模型。实验中菌落五分类平均准确率达到了84.31%。
完成活体菌落计数与分类任务后,通过频域处理对图像旋转进行优化加速,通过OpenCV的CUDA库对菌落计数模块完成GPU优化加速,通过OpenMP使用多核CPU对粘连菌落分割进行加速。最后移植算法,将部分算法功能集成于菌落分析软件中。
本文设计的活体菌落智能计数和分类算法不仅可以准确地获取培养皿内部活体菌落的数目,排除杂质水渍的干扰,还能够实验人员依据需求,对菌落进行形态学分类。相比于现有的菌落分析算法或市面上现有的菌落分析软件,本文提出的算法在计数和分类方面都有优势。