一种钉螺智能检测识别与统计系统
技术邻域
本发明涉及钉螺检测技术邻域,具体是一种钉螺智能检测识别与统计系统。
背景技术
血吸虫病是一种通过水传播的、人畜共患的重大传染病,流行于亚洲、非洲和南美等地区,被世界卫生组织列为极易复发的再现传染病。血吸虫病在我国南方流行已有2100余年,目前,仍在我国长江流域的江苏、安徽、江西、湖南、湖北、云南、四川7个省份流行,严重危害疫区人民身体健康和生命安全、阻碍当地经济发展和社会进步。
钉螺是血吸虫病传播的唯一中间宿主。钉螺的分布和血吸虫病的流行区域有着十分密切的联系,钉螺调查是血吸虫病防治的重要的基础工作之一。现有的钉螺调查技术基本以人工查螺方法为主,需要调查者将检查点内的钉螺全部捕捉,然后通过系统抽样调查法、系统抽样结合环境抽查法、全面细查法等估算钉螺分布情况。而不同年龄组、是否接受血防教育的查螺人员的钉螺检出率有很大差异,最高检出率为68.95%,最低检出率为29.45%。传统人工查螺方法,影响查螺质量的因素较多,查螺质量较低,远不能满足水利血防研究等工作对数据的要求。
中国专利申请(申请号:201110022158.5)公开了一种用于钉螺及其它陆地生物资源调查的自动照相装置,该装置主要由遥控器和照相小车两部分组成,能实现程序设定和遥控两种控制方式进行拍照、存储。这种自动照相装置可用于钉螺的查找,也可用于其它陆地生物资源的调查。采用这种装置对钉螺及其它陆地生物资源开展调查,不但可提供准确的地表生物分布数据,也可节省大量的时间和人力、物力,提高工作效率。该装置用于自动拍摄钉螺资源图像,但钉螺分布环境复杂土表、土层,水边线、稻田、沟渠与江、湖洲滩和湖汊内均有分布,仅借助数码相机能采集到的钉螺图像信息十分不完整,并且此技术仅涉及图像获取,没有涉及对钉螺的识别检测。
中国专利申请(申请号:201410369500.2)公开了一种基于无线传感网络监测钉螺及钉螺生存环境的智能系统,其中每一个前端子系统对所负责的监测水域内的钉螺覆盖物进行搅拌清理后进行图像采集,并采集水域的环境信息,通过无线方式发送给中部通信转换子系统的簇首节点;再通过无线方式发送给同一个二次汇聚节点,二次汇聚节点通过连接的路由器将数据转发给终端处理统计预警发布子系统的服务器;终端处理统计预警发布子系统的服务器进行图像处理、图像识别及图像理解,并通过与危险警报阀值进行比较给出相关预警播报,同时进行数据发布给相连的客户机,供客户机端工作人员查看并发布相关命令进行处理。该技术适用于固定水域的钉螺环境监测,对于更广邻域,无法满足更细致范围的非人工查螺需求,不便携带。
发明内容
本发明的目的是提供一种钉螺智能检测识别与统计系统,创新性地采用CT成像设备采集土壤中的钉螺图像,可以解决现有技术无法获取土壤中的钉螺照片以及获取照片不完整的问题,同时提高采集到的图像中的钉螺的识别检测率,而且整套系统基于便携式设备,可使未接受血防教育的一般人员可以完成图像采集与钉螺检测、统计操作。
一种钉螺智能检测识别与统计系统,包括CT图像采集模块、图像自动检测模块和数据分析处理模块;
所述CT图像采集模块,用于获取待检测的包含有钉螺的高清泥土样本三维图像,即钉螺CT图像,并将所述钉螺CT图像发送给图像自动检测模块;
所述图像自动检测模块,用于对采集到的钉螺CT图像进行图像预处理后,利用螺钉自动识别检测算法检测出钉螺;
所述数据分析处理模块,与所述图像自动检测模块连接,用于根据图像自动检测模块检测结果统计检测出钉螺的数量与种类,并给出钉螺分布情况。
进一步的,所述CT图像采集模块采用微米级便携CT扫描仪,获取待检测的高清泥土样本三维图像,进而获取所述钉螺CT图像。
进一步的,所述图像自动检测模块包括图像预处理模块、钉螺识别检测模块;
所述图像预处理模块,用于对输入的钉螺CT图像进行对比度增强、图像去光电噪声、边缘增强与直方图均衡;
所述钉螺识别检测模块,用于将经过图像预处理模块预处理后的图像基于神经网络的钉螺识别检测算法进行钉螺的识别。
进一步的,所述钉螺识别检测算法分为训练与测试两个阶段,所述钉螺识别检测模块包括钉螺预检测模块、模型参数训练模块和输入图像检测模块;
所述钉螺预检测模块用于在进入特征提取网络前进行钉螺预检测,进行钉螺区域与背景的分离,大致区分原始图像中有钉螺的区域和背景区域,即分离钉螺与背景;所述特征提取网络在整体网络训练开始前就已经存在,是一个具有5~13个卷积层的已经经过预先训练的模型,这个预训练过的模型可以是VGG、CaffeNet等。
所述模型参数训练模块,用于收集不同种类、不同土壤环境中钉螺CT图像,并将钉螺CT图像中钉螺所在位置坐标与种类类别标记出来,输入到预置多层神经网络内进行多次迭代学习,得到钉螺识别检测模型;
所述输入图像检测模块,与所述模型参数训练模块连接,用于将经过图像预处理模块预处理后的图像输入所述模型参数训练模块得到的钉螺识别检测模型,输出图像中每个钉螺坐标位置与对应钉螺的种类类别。
进一步的,所述模型参数训练模块训练得到钉螺识别检测模型具体步骤包括:
步骤(1)、收集大量不同种类、不同土壤环境中钉螺CT图像,并将图像中钉螺所在区域用标定框框住,并对标定框的坐标与钉螺的类别做记录,类别记录称为类标签,这些用于训练模型参数的图像数据称为训练集;
步骤(2)、生成候选区域:对训练集中所有的图片,用选择性搜索算法提取出每张图片对应的N个候选区域,其中N>=300,并保存相应的图片信息与这些候选区域的边框信息,称为候选框;
步骤(3)、对于每张钉螺CT图像,根据图片中候选框与步骤(1)得到的钉螺标定框与钉螺类标签,给该图片的N个候选区域赋值类标签,并保存;
步骤(4)、ROI池化:roi_pool层将每个候选区域均匀分成M×N块,对每块进行最大值池化操作,将特征图上大小不一的候选区域转变为大小统一的特征数据,送入全连接层1;全连接层1输出的每个特征向量输入到两个并行的全连接层中,其中全连接层2下的分类得分层用于分类,对目标关于K+1个对象类产生softmax概率估计;全连接层3下的边框位置回归层用于调整候选区域位置,输出4*K维数组,表示分别属于K类时,应该平移缩放的参数,即对于每个类别都会训练一个单独的回归器。
进一步的,所述步骤(3)中具体赋值方法为:对于N个候选区域,如果标定框中的区域的候选框与标定框的重叠度值大于阈值THR,则将标定框中区域对应的类标签赋给此标定框所在候选区域,反之小于阈值的候选区域的类别标记为背景。
进一步的,所述输入图像检测模块对预处理后的图像输入所述模型参数训练模块得到的钉螺识别检测模型,输出图像中每个钉螺坐标位置与对应钉螺的种类类别,具体步骤如下:
步骤(1)、用选择性搜索方法在输入的测试图片中生成N个候选区域并保存;
步骤(2)、将整张图片输入上一步已经训练好的特征提取网络中,进行特征提取;
步骤(3)、将候选区域映射到特征提取网络提取出的特征图上;
步骤(4)、通过RoI池化层使每个候选区域生成固定尺寸的特征,并将其输入到后面的全连接层1,将从全连接层1输出的特征征输入到两个并行的全连接层中,即全连接层2和全连接层3中,并分别完成分类与回归任务。
进一步的,所述步骤(4)中分类任务输出K+1维数组VectorP,表示属于K类钉螺和背景的概率,取概率最大值对应的种类类别为钉螺种类类别,并输出螺钉的目标框坐标位置;框回归任务用于调整候选区域位置,输出4*K维数组VectorB,表示分别属于K类中的某一类时,框住此类别螺钉的目标框坐标位置,即钉螺坐标位置。
进一步的,所述钉螺预检测模块分离钉螺与背景具体包括如下步骤:对原始图像阈值分割,具体先把原始钉螺CT图像分成M个子块,M取值2的N次平方,N为正整数,对每个子块内采用拉普拉斯滤波进行边缘检测,确定边缘数量作为此子区域分裂还是不分裂的判断准则,对于每个子块,若区域内边缘数量大于阈值T,T为大于3的自然数,则此区域又分裂为M个子块,分裂至最小子块数量为一般钉螺在CT图像中的大小的十分之一时停止分裂,以每个最小子块为中心,判断与它的邻域子块是否满足合并条件,合并条件为每个子块间的类间方差,类间方差小于阈值L的满足合并条件,子块合并为更大的子块,最终在原始图像中分割出多个连通区域,区域合并为刚大于10个子块大小时,对每个区域中的连通区域进行边缘检测,边缘数大于阈值L即为钉螺。
进一步的,所述图像预处理模块处理步骤具体为:首先进行一次伽马矫正增强CT图像的对比度,然后采用高斯平滑滤波去除光电转化中的人为图像噪声,再采用中值滤波与邻域平均处理限制其他噪声的同时保护图像中物体边缘,最后进行图像的锐化与边缘增强,以突出钉螺的轮廓信息。
本发明利用CT成像设备采集区域内土表及土壤内的钉螺图像,可以解决现有现有技术无法获取土壤中的钉螺照片以及获取照片不完整的问题。同时使用基于人工智能与深度学习的图像识别算法自动识别并检测钉螺图像中的钉螺数量与分布,极大提高了钉螺调查的效率,降低对查螺人员的专业素质要求;而且提高土壤中钉螺的检测识别率和钉螺调查的科学性和准确性。
附图说明
图1是本发明钉螺智能检测识别与统计系统的模块框图;
图2是本发明中图像自动检测模块的模块框图;
图3是本发明钉螺识别检测网络模型图;
图4是本发明中钉螺识别检测过程示意图。
图中:10—CT图像采集模块,20—图像自动检测模块,30—数据分析处理模块,21—图像预处理模块,22—钉螺识别检测模块,
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述。
本发明利用CT成像设备采集区域内土表及土壤内的钉螺图像,以解决现有现有技术无法获取土壤中的钉螺照片以及获取照片不完整的问题,同时使用基于人工智能与深度学习的图像识别算法自动识别并检测钉螺图像中的钉螺数量与分布,提高钉螺调查的效率,提高土壤中钉螺的检测识别率和钉螺调查的科学性和准确性。
请参阅图1,本发明钉螺智能检测识别与统计系统其中一个实施例包括CT图像采集模块10、图像自动检测模块20和数据分析处理模块30。
所述CT图像采集模块10,用于获取待检测的高清泥土(包含有钉螺)样本三维图像,即钉螺CT图像,并将所述钉螺CT图像发送给图像自动检测模块20;所述CT图像采集模块10可采用微米级便携CT扫描仪(使用X线束及探测器组成装置对一定厚度的层面进行扫描),获取待检测的高清泥土样本三维图像,进而获取所述钉螺CT图像。在水网地区,全年平均钉螺在土表约占60%,土内约占40%,其中在5cm以上的浅土层约占35%,在更深层的土层内约占5%,而X光可以穿透足够深的土壤拍摄出高清晰的钉螺图像。CT图像采集模块10可使用但不仅限于德国STEPS型号videomete微米级便携CT扫描仪采集图像,并通过USB连接至台式电脑或笔记本电脑。
所述图像自动检测模块20,用于对采集到的钉螺CT图像进行图像预处理后,利用螺钉自动识别检测算法检测出钉螺;
所述数据分析处理模块30,与所述图像自动检测模块20连接,用于根据图像自动检测模块20检测结果统计检测出钉螺的数量与种类,并给出钉螺分布情况,例如通过图形界面反馈给使用者。
请结合参阅图2,所述所述图像自动检测模块20包括图像预处理模块21、钉螺识别检测模块22。
所述图像预处理模块21,主要是对输入的钉螺CT图像进行对比度增强、图像去光电噪声、边缘增强与直方图均衡,提高原始高清图像用于检测识别时的质量。具体的,首先进行一次伽马矫正增强CT图像的对比度,然后采用高斯平滑滤波去除光电转化中的人为图像噪声,再采用中值滤波与邻域平均处理限制其他噪声的同时保护图像中物体边缘,最后进行图像的锐化与边缘增强,目的是突出钉螺的轮廓信息。采用的算法是Butterworth高通滤波。图像噪声是指存在于图像数据中的不必要的或多余的干扰信息。噪声种类很多,比如:电噪声,机械噪声,信道噪声和其他噪声。因此,为了抑制噪声,改善图像质量,便于更高层次的处理,必须对图像进行去噪预处理。对于CT图像成像,光电噪声为主要噪声,还有信道噪声或其他噪声。
所述钉螺识别检测模块22,用于将经过图像预处理模块21预处理后的图像基于神经网络的钉螺识别检测算法进行钉螺的识别。所述钉螺识别检测算法分为训练与测试两个阶段。对应的,所述钉螺识别检测模块22包括钉螺预检测模块、模型参数训练模块和输入图像检测模块。
训练和测试的数据在进入特征提取网络前通过钉螺预检测模块进行钉螺预检测步骤。钉螺预检测,即进行钉螺区域(前景)与背景的分离,大致区分原始图像中有钉螺的区域和大片无钉螺(背景)区域,即分离钉螺与背景,并最大限度保留钉螺对象的特征。
具体的,在钉螺的CT成像中,包含多个连通区域,土壤块本身呈现为连通区域,钉螺也有连通区域,但钉螺的连通区域内包含多个竖状钉螺条纹,因此对于不同的连通区域,钉螺连通区域内的图像频域信息变化明显,可借助此条纹信息进行预检测。预检测的步骤具体为:对原始图像阈值分割,具体先把原始钉螺CT图像分成M个子块(M取值2的N次平方,N为正整数),由于CT钉螺图像具有多条纹和条纹较宽的特质,对每个子块内采用拉普拉斯滤波进行边缘检测,确定边缘数量作为此子区域分裂还是不分裂的判断准则,对于每个子块,若区域内边缘数量大于阈值T(T可手动设置,为整数,必须大于3),则此区域又分裂为M个子块,分裂至最小子块数量为一般钉螺在CT图像中的大小的十分之一时停止分裂,以每个最小子块为中心,判断与它的邻域子块是否满足合并条件,合并条件为计算每个子块间的余弦相似度与结构相似性(SSIM),余弦相似度与结构相似性范围从0到1,余弦相似度大于0.7且SSIM大于0.4时子块满足合并条件,子块合并为更大的子块。这样不断合并,最终在原始图像中分割出多个连通区域。由于在CT图像中,钉螺图像的纹理复杂度比土壤要复杂很多,设置较小的阈值L可以快速将背景(土壤)图像分割出来,剩下的区域即为钉螺预检测区域。区域合并为刚大于10个子块大小时,对每个区域中的连通区域进行边缘检测,边缘数大于L就是钉螺。
所述模型参数训练模块,用于收集不同种类、不同土壤环境中钉螺CT图像,并将钉螺CT图像中钉螺所在位置坐标与种类类别标记出来,输入到预置多层神经网络内进行多次迭代学习,得到钉螺识别检测模型。具体步骤如下:
1、收集大量不同种类、不同土壤环境中钉螺CT图像,并将图像中钉螺所在区域用矩形框(即标定框)框住,并对矩形框的坐标与钉螺的类别做记录,类别记录称为类标签,这些用于训练模型参数的图像数据称为训练集。
2.生成候选区域。对训练集中所有的图片,用选择性搜索算法提取出每张图片对应的N(N>=300)个候选区域,并保存相应的图片信息与这些候选区域的边框信息,称为候选框。
3.对于每张钉螺CT图像,根据图片中候选框与步骤1得到的钉螺标定框与钉螺类标签,给该图片的N个(例如2000个)候选区域赋值类标签,并保存。
具体赋值方法为:对于N个候选区域,如果标定框中的区域的IoU(intersection-over-union,表示候选框与标定框的重叠度)值大于阈值THR(THR=0.5),则将标定框中区域对应的类标签赋给此标定框所在候选区域,反之小于阈值的候选区域的类别标记为背景。
设定一个最小批次值,对于每一个最小批次,首先加入K张完整图片,然后再加入从K张图片中选取的R个候选框。这R个候选框可以复用K张图片前5个阶段的网络特征(K=2,R=128),其中R个候选框的构成为:25%来自有非背景标签的候选区域,75%来自标记为背景的候选区域。
4.ROI池化。roi_pool层将每个候选区域均匀分成M×N块,对每块进行最大值池化(max pooling)操作,将特征图上大小不一的候选区域转变为大小统一的特征数据,送入全连接层1。
5、全连接层1输出的每个特征向量输入到两个并行的全连接层中(全连接层2,全连接层3)中(如图3所示),其中全连接层2下的分类得分层用于分类,对目标关于K+1个对象类(包括“背景”类)产生softmax概率估计;全连接层3下的边框位置回归层用于调整候选区域位置,输出4*K维数组,表示分别属于K类时,应该平移缩放的参数,即对于每个类别都会训练一个单独的回归器。由于钉螺在CT图像中边缘性与封闭性明显,取特征提取网络的前三层的特征输出结果与全连接层2前的特征输出合并后,共同用作全连接层2往下的分类任务。特征提取网路的前三层分别包含钉螺的颜色、轮廓、纹理信息,将这些低层特征信息与全连接层2前的高层特征信息结合,分类更准确。
整个训练结构为多任务损失的端到端训练(trained end-to-end with a multi-task loss)。共2个损失函数,一个用来计算钉螺类别的分类损失函数,称为loss_分类;一个计算钉螺所在位置框的位置损失函数,称为loss_框回归。对于真实分类u,二者的联合损失函数表示为:
其中:
L分类(p,u)=-logpu
tu为真实分类对应的预测参数,v为真实平移缩放参数,p为离散类别概率分布。
四维向量(x,y,w,h)表示钉螺检测目标框的位置信息,x表示目标框中心点的横轴坐标、y表示目标框中心点的纵轴左边,w表示该目标框的宽度,h表示该目标框的高度。
所述输入图像检测模块,与所述模型参数训练模块连接,用于将经过图像预处理模块21预处理后的图像输入所述模型参数训练模块得到的钉螺识别检测模型,输出图像中每个钉螺坐标位置与对应钉螺的种类类别。具体步骤如下(如图4所示):
1.同样用选择性搜索方法在输入的测试图片中生成N个候选区域并保存。
2.将整张图片输入上一步已经训练好的特征提取网络中,进行特征提取;
3.将候选区域映射到特征提取网络提取出的特征图上;
4.通过RoI池化层使每个候选区域生成固定尺寸的特征,并将其输入到后面的全连接层1。将从全连接层1输出的特征征输入到两个并行的全连接层中(全连接层2,全连接层3)中,并分别完成分类与回归任务。分类任务输出K+1维数组VectorP,表示属于K类钉螺和背景(非钉螺区域)的概率,取概率最大值对应的种类类别为钉螺种类类别,并输出螺钉的目标框坐标位置。框回归任务用于调整候选区域位置,输出4*K维数组VectorB,表示分别属于K类中的某一类时,框住此类别螺钉的目标框坐标位置,即钉螺坐标位置。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术邻域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。