一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种免疫印迹图像识别方法与流程

2022-02-20 06:50:02 来源:中国专利 TAG:
1.本发明涉及图像识别领域,特别是涉及一种免疫印迹图像识别方法。
背景技术
::2.随着医疗领域的发展,对于过敏的病症,由最初的无计可施,转变到后来的过敏原检测,目前常规的过敏原检测包括点刺检查过敏源、斑点试验、总ige检测、食物不耐受检测以及免疫印迹检测等。其中免疫印迹法是一种将高分辨率凝胶电泳和免疫化学分析技术相结合的杂交技术。将过敏原特性抗体igg免疫印迹法检测的膜条粘贴于标准格式读取板上,经平板扫描仪扫描成电子图像,本算法对该电子图像识别膜条位置,鉴别膜条条带特异性。免疫印迹法不仅广泛应用于分析抗原组分及其免疫活性,还能够用于疾病的诊断。3.在传统的免疫印迹法检测过程中,膜条贴于结果读取板上,通过与比色板的人工比对,判断识别检测结果。在传统的方法中需要消耗大量的人力,另外在人工比对的过程中由于受个人视力的影响,容易导致比对不准确,带有一定的主观因素。因此需要一种免疫印迹图像识别的方法。技术实现要素:4.本发明的目的是解决现有技术的不足,提供一种免疫印迹图像识别方法。5.为了解决上述问题,本发明采用如下技术方案:6.一种免疫印迹图像识别方法,包括如下步骤:7.步骤1:通过扫描设备,获取膜条读取板扫描图像;8.步骤2:对扫描图像进行预处理,预处理包括图像增强、滤波、连通域分析、旋转以及裁边处理;最后缩小图像,获得待处理图像;9.步骤3:根据待处理图像提取膜条区域,获取膜条区域的阴影区域;并根据阴影区域去除阴影;10.步骤4:判断膜条区域是否存在粘连;若存在粘连,则对粘连的膜条区域进行分割,进入下一步;若不存在粘连,则直接进入下一步;11.步骤5:对膜条区域进行倾斜校正,使膜条区域朝向设定的方向;12.步骤6:统计倾斜校正后的膜条区域,整理成膜条列表,并识别标号;13.步骤7:识别并定位膜条列表中的膜条上的膜线,获得膜线集;14.步骤8:对膜条列表中的膜条进行污点去除操作;15.步骤9:计算每条膜线的光密度值,并根据光密度值,获得每条膜线对应的浓度值;结束步骤。16.进一步的,所述步骤2中预处理流程包括如下步骤:17.步骤21:扫描图像增强,根据扫描图像的亮度对扫描图像进行增强;18.步骤22:扫描图像滤波,滤波采用双边滤波;19.步骤23:对扫描图像进行连通域分析,其中面积最大的连通域为背景区域,背景区域表示扫描图像中除膜条以外的区域;20.步骤24:旋转扫描图像,根据连通域分析的结果,选择面积最大的连通域,根据该连通域的边缘,计算偏转角度,并根据偏转角度转动扫描图像;21.步骤25:对扫描图像裁边,根据面积最大的连通域,在旋转后的扫描图像中确定外接正矩形框,并根据外接正矩形框的范围,对扫描图像进行裁边,获得待处理图像。22.进一步的,所述步骤3中去除膜条区域中的阴影区域包括如下步骤:23.步骤31:将经由步骤2获得的待处理图像由彩色图像转换为灰度图像;24.步骤32:对灰度图像进行二值化处理,获得灰度二值化图像gray_binary;25.步骤33:对灰度二值化图像gray_binary做形态学开运算处理;26.步骤34:将经由步骤2获得的待处理图像由rgb空间转至hsv空间,获得hsv图像;27.步骤35:对hsv图像进行二值化处理,其中将设定hsv范围内的像素点赋值为255,其余像素点赋值为0,获得膜条的阴影二值化图像black;表示为:[0028][0029]其中[h1,s1,v1]和[h2,s2,v2]为设定值;black表示阴影二值化图像中的像素;h,s,v表示hsv图像中像素的色调h、饱和度s和明度v;[0030]步骤36:将灰度二值化图像gray_binary和阴影二值化图像black做与操作,获得与操作图像,记为and_gray_black;[0031]步骤37:在阴影二值化图像black中减去与操作图像and_gray_black,获得阴影区域图像;[0032]步骤38:将二值化图像binary减去阴影区域图像,获得膜条区域二值图。[0033]进一步的,所述步骤4中,其中粘连膜条区域的分割包括如下步骤:[0034]步骤401:根据膜条区域掩膜图morph,在膜条区域掩模图morph上进行连通域查找,判断膜条连通域的面积;膜条连通域表示膜条区域的连通域;若该膜条连通域的面积满足设定的单膜条区域面积范围,则认为是单膜条,结束步骤;若该膜条连通域的面积满足设定的双膜条区域面积范围,则认为是双模条粘连,进入步骤402;若该膜条连通域的面积满足设定的多膜条区域面积范围,则认为是多膜条粘连,舍弃该膜条区域,并在图像上标记,结束步骤;[0035]步骤402:根据膜条连通域设置外接正矩形框;[0036]步骤403:根据外接正矩形框,裁切出粘连膜条矩形框图像cut_image;[0037]步骤404:对粘连膜条矩形框图像cut_image进行距离变换,获得距离变换图像distance_image;[0038]步骤405:计算距离变换图像distance_image中的最大距离值max_dis;[0039]步骤406:对距离变换图像distance_image进行二值化处理,获得粘连区域二值化图像adjoin_image;[0040]步骤407:根据粘连区域二值化图像adjoin_image,计算获得图像的质心坐标center;[0041]步骤408:对粘连区域二值化图像adjoin_image进行形态学处理,获得图像dilate_image;[0042]步骤409:将粘连膜条矩形框图像cut_image与图像dilate_image做差,得到非粘连区域图像diff;[0043]步骤410:对非粘连区域图像diff进行距离变换处理,在获得的距离变换图像中寻找最大值;并根据最大值对距离变换图像进行二值化处理,得到膜条骨架binary;[0044]步骤411:计算膜条骨架binary的区域面积binary_area,以及粘连区域二值化图像adjoin_image的区域面积center_area;[0045]步骤412:对膜条骨架binary进行直线拟合,根据拟合直线的长度,判断膜条粘连的情况;若拟合直线长于设定值,则认为膜条为左右粘连,进入步骤413;若拟合直线没有长于设定值,则认为膜条为上下粘连,进入步骤414;[0046]步骤413:计算膜条骨架binary的质心,在质心处设置沿y轴方向的分割线进入步骤417;[0047]步骤414:判断区域面积binary_area以及区域面积center_area的大小;若区域面积binary_area小于设定值一,区域面积center_area大于设定值二,则认为膜条上下粘连区域较大,进入步骤415;否则认为膜条上下粘连区域较小,进入步骤416;[0048]步骤415:膜条上下粘连区域较大,则对粘连区域二值化图像adjoin_image进行直线拟合,获得拟合直线的斜率,并且获得粘连区域二值化图像adjoin_image的质心;根据拟合直线的斜率和质心获得分割线,进入步骤417;[0049]步骤416:膜条上下粘连区域较小,则分别计算上下两条粘连膜条的斜率,并得出斜率均值;并获得粘连区域二值化图像adjoin_image的质心;根据斜率均值和质心获得分割线,进入步骤417;[0050]步骤417:根据分割线分割膜条,获得单膜条区域,结束步骤;[0051]在步骤401中的膜条区域掩膜图morph根据膜条区域二值图,经过形态学处理获得。[0052]进一步的,所述步骤416中,斜率均值的计算包括如下步骤:[0053]步骤4161:对膜条骨架binary进行连通域分析,对每个连通域进行直线拟合操作;[0054]步骤4162:根据拟合的直线,获得其斜率;[0055]步骤4163:将距离相近的连通域进行合并,得到相邻连通域的斜率均值。[0056]进一步的,所述步骤5中对步骤4获得的膜条区域进行倾斜校正,倾斜校正包括如下步骤:[0057]步骤51:根据膜条区域掩膜图morph,进行连通域查找,获得膜条连通域;根据膜条连通域设置外接正矩形框rect,并记录外接正矩形框rect的长、宽、边角坐标以及膜条偏转角angle;[0058]步骤52:在外接正矩形框rect内,统计像素值为255的像素的个数,并计算其与外接正矩形框rect内总像素个数的比值,记为白块比值white_block_rate;[0059]步骤53:判断白块比值white_block_rate与设定阈值的大小关系;若白块比值white_block_rate大于设定阈值,则认为膜条偏转角angle计算正确,结束步骤;否则,认为膜条偏转角angle计算错误,修正膜条偏转角angle,结束步骤。[0060]进一步的,所述步骤53中,膜条偏转角angle的修正包括如下步骤:[0061]步骤531:将步骤2获得的待处理图像转换为灰度图像,根据步骤51获得的外接正矩形框rect的位置,分割出膜条灰度图像rect_strip;[0062]步骤532:对膜条灰度图像rect_strip,在设定的角度范围内,以设定的步长进行转动,计算每次旋转后的图像的核范数;[0063]步骤533:以核范数最大的旋转角度,作为修正后的膜条偏转角angle;[0064]所述步骤532中核范数的计算通过奇异值分解法获得。[0065]进一步的,所述步骤6中整理膜条表格的过程包括如下步骤:[0066]步骤61:在步骤2获得的待处理图像中,根据阴影区域图像去除到处理图像中的阴影;[0067]步骤62:通过分割线以及外接正矩形框,截取单膜条图像;[0068]步骤63:根据膜条偏转角angle,对截取单膜条图像进行转动,获得膜条图像big_strip;[0069]步骤64:将膜条图像进行整理,获得膜条集strip;膜条集strip包括膜条区域的长、宽以及边角坐标;[0070]步骤65:识别膜条集strip,获得膜条列表并统计膜条序号。[0071]进一步的,所述步骤65中识别膜条集strip,获得膜条列表并统计膜条序号的步骤包括:[0072]步骤651:将步骤2获得的待处理图像转换为灰度图像;[0073]步骤652:计算灰度图像的拉普拉斯边缘lap;[0074]步骤653:根据膜条区域掩膜图morph,在拉普拉斯边缘lap中去除拉普拉斯边缘包裹的膜条区域;[0075]步骤654:将拉普拉斯边缘lap向x轴方向上进行投影,获得水平方向上的投影直方图hist;[0076]步骤655:根据设定的表格间隔space_table以及表格线投影累积peak_table,在投影直方图hist中,将满足表格间隔space_table以及表格线投影累积peak_table的阈值的波峰位置记为表格线,并对缺失的表格线进行相对位置补全,并获得表格位置集box;其中表格位置集box记录了表格线分割出来的每个表格框的位置信息;[0077]步骤656:根据膜条集strip中的膜条的边角坐标中的x轴坐标,将膜条集进行分割,获得单列的膜条集;[0078]步骤657:将分割出来的单列膜条集,分别沿着y轴方向,从上到下进行排序;[0079]步骤658:在表格位置集box中寻找每个表格框的中心位置,对每个中心位置,从上到下标记对应序号;每列表格框分别对应一个序号列;并对序号列进行查重更新;[0080]步骤659:合并不同的序号列、不同的单列膜条集以及对应的表格位置集box,获得膜条列表。[0081]进一步的,所述步骤9中膜线浓度值的计算包括如下步骤:[0082]步骤91:根据步骤8中获得的去污点图像,获取膜线的直方图;[0083]步骤92:根据膜线的直方图,计算每条膜线上的光密度值,并获得均值光密度值;[0084]步骤93:根据膜条上的质控线的均值光密度值与设定的质控线光密度,计算修正系数correction_factor,并对其他膜线位置的均值光密度值进行修正;[0085]步骤94:将膜线修正后的均值光密度值带入标定曲线方程;其中标定曲线方程为三次样条方程或者四参数拟合方程;[0086]在步骤93中的质控线为膜条上设定的膜线。[0087]本发明的有益效果为:[0088]通过对粘连膜条的分割、膜条的倾斜校正以及对膜条区域的识别统计,将膜条读取板上的随机粘贴的膜条,整理成均匀排列的膜条列表,并识别列表,另一方面通过对膜条上的膜线定位和识别,将膜线识别的光密度值转换为浓度值,实现自动检测识别膜条;[0089]通过对膜线的定位,包括确定质控膜线以及其他的待选膜线,将其他待选膜线与根据质控膜线获得的初选膜线集进行比对,选出合适的待选膜线作为最终膜线集中的膜线,并实时对初选膜线集进行修正,保证最终确定的膜线集中的膜线的位置准确;[0090]在膜线定位过程中,通过灰度图像和增强图像的差值图像获得的投影直方图以及灰度图像获得的均值直方图,分别确定待选膜线的位置,保证膜线定位准确,避免出现遗漏;[0091]通过筛选污点,并将同列像素中的非污点像素的灰度均值替换污点像素,完成膜条去污处理,避免污点干扰后续的膜线浓度值检测;[0092]通过质控膜线的均值光密度,对其他膜线的均值密度进行修正,消除扫描仪在扫描图像过程中产生的扫描亮度偏差等;[0093]通过四参数拟合方程,实现膜线的均值光密度值与膜线的浓度值之间的转换。附图说明[0094]图1为本发明实施例一的整体流程图;[0095]图2为本发明实施例一的预处理后的膜条读取板示意图;[0096]图3为本发明实施例一的扫描的膜条及阴影示意图;[0097]图4为本发明实施例一的步骤33的灰度图经过开运算处理得到的图像;[0098]图5为本发明实施例一的阴影二值化图像;[0099]图6为本发明实施例一的图4和图5做与操作得到的阴影图像;[0100]图7为本发明实施例一的膜条区域二值图;[0101]图8为本发明实施例一的膜条粘连情况示意图;[0102]图9为本发明实施例一的粘连区域图像示意;[0103]图10为本发明实施例一的膜条骨架图像一;[0104]图11为本发明实施例一的左右粘连膜条及分割线位置;[0105]图12为本发明实施例一的膜条上下粘连的粘连区域的图像示意;[0106]图13为本发明实施例一的根据图12获得的膜条骨架图像二;[0107]图14为本发明实施例一的上下粘连膜条及根据图13获得的分割线示意图;[0108]图15为本发明实施例一的膜条上下粘连的粘连区域的图像示意二;[0109]图16为本发明实施例一的根据图15获得的膜条骨架三;[0110]图17为本发明实施例一的上下粘连膜条及根据图16获得的分割线示意图;[0111]图18为本发明实施例一的单膜条区域及膜条偏转角示意图;[0112]图19为本发明实施例一的步骤64中获得的膜条集;[0113]图20为本发明实施例一的步骤65中获得的膜条列表;[0114]图21为本发明实施例一的膜线集中的位置示意;[0115]图22为本发明实施例一的cv直方图;[0116]图23为本发明实施例一的步骤913中获得的斜率直方图;[0117]图24为本发明实施例一的步骤911获得的灰度均值直方图和步骤915获得的基线直方图的结合;[0118]图25为本发明实施例一的均值光密度直方图;[0119]图26为本发明实施例一的四参数拟合曲线;[0120]图27为本发明实施例一的浓度值和膜线位置的对应输出示意图。具体实施方式[0121]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。[0122]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。[0123]实施例一:[0124]如图1所示,一种免疫印迹图像识别方法,包括如下步骤:[0125]步骤1:通过扫描设备,完成膜条读取板的图像扫描,获取扫描图像;[0126]步骤2:对扫描图像进行预处理,预处理包括图像增强、滤波、连通域分析、旋转以及裁边处理;获得待处理图像;[0127]步骤3:根据待处理图像提取膜条区域,获取膜条区域的阴影区域;并根据阴影区域去除阴影;[0128]步骤4:判断膜条区域是否存在粘连;若存在粘连,则对粘连的膜条区域进行分割,进入下一步;若不存在粘连,则直接进入下一步;[0129]步骤5:对膜条区域进行倾斜校正,使膜条区域朝向设定的方向;[0130]步骤6:统计倾斜校正后的膜条区域,整理成膜条列表,并识别标号;[0131]步骤7:识别并定位膜条列表中的膜条上的膜线,获得膜线集;[0132]步骤8:对膜条列表中的膜条进行污点去除操作;[0133]步骤9:计算每条膜线的光密度值,并根据光密度值,获得每条膜线对应的浓度值;结束步骤。[0134]需要说明的是在一些其他实施方式中也可以去除步骤3和步骤8的过程。[0135]所述步骤1中的膜条读取板在本例中为绿色的纸张,膜条读取板上粘贴有带检测结果的膜条;需要说明的是在一些其他实施方式中,膜条读取板可以为其他颜色的纸张或者纸板等。获得的扫描图像为rgba4通道真彩图,扫描图像的分辨率大于等于2000×3000dpi。在获得扫描图像后,将扫描图像进行存储标记,在本例中扫描图像标记为img_original。[0136]如图2所示,在本例中步骤2中对完成图像的预处理后,还需要对图像进行缩小操作,获得待处理图像;在本例中将图像的面积缩小三分之一,因为扫描图像较大,时间复杂度高,会降低后续流程进行速度。其中预处理流程包括如下步骤:[0137]步骤21:扫描图像增强,根据扫描图像的亮度对扫描图像进行增强;在本例中,对于偏亮或者偏暗的扫描图像通过gamma变换完成图像增强;[0138]步骤22:扫描图像滤波,滤波采用双边滤波;在本例中双边滤波的参数包括窗口大小设置为5,像素方差设置为11,空间方差设置为11;[0139]步骤23:对扫描图像进行连通域分析,其中面积最大的连通域为背景区域,背景区域表示扫描图像中除膜条以外的区域;[0140]步骤24:旋转扫描图像,根据连通域分析的结果,选择面积最大的连通域,根据该连通域的边缘,计算偏转角度,并根据偏转角度转动扫描图像;[0141]步骤25:对扫描图像裁边,根据面积最大的连通域,在旋转后的扫描图像中确定外接正矩形框,并根据外接正矩形框的范围,对扫描图像进行裁边,获得待处理图像。[0142]所述步骤21中的扫描图像增强处理和步骤22中的扫描图像滤波处理都是为了使扫描图像更清晰。[0143]所述步骤23中,对图像的连通域分析包括如下步骤:[0144]步骤231:将rgb扫描图像转换为lab图像;lab图像包括三个通道,分别为l通道,a通道,b通道;[0145]步骤232:对lab图像的a通道图像做自适应二值化处理;[0146]步骤233:对二值化处理后的图像做形态学处理;[0147]步骤234:将形态学处理后的图像的边界赋值为0,寻找连通域。[0148]所述步骤232中,对a通道图像做自适应二值化处理,在本例中将绿色像素点或区域赋值为255,非绿色像素点或区域赋值为0。[0149]所述步骤233中的形态学处理在本例中为开运算,即对图像先腐蚀后膨胀,实现去除噪声块,填补空洞的目的。[0150]所述步骤25中外接正矩形框表示目标区域的外接最小矩形框,并且该矩形框端正设置。[0151]如图3-7所示,所述步骤3中,由于膜条具备一定的厚度,因此在对膜条读取板进行图像扫描的过程中会形成阴影区域,阴影区域会影响后续的倾斜校正、光密度计算等过程,因此需要先去除阴影区域。其中对膜条区域的提取,首先将步骤2获得的待处理图像由rgb空间转lab空间;其次对lab空间的a通道图像进行自适应二值化处理,获得二值化图像binary,在本例中将绿色区域或像素点赋值为0,非绿色区域或像素点赋值为255,其中白色区域即为膜条区域。去除膜条区域的阴影包括如下步骤:[0152]步骤31:将经由步骤2获得的待处理图像由彩色图像转换为灰度图像;[0153]步骤32:对灰度图像进行二值化处理,获得灰度二值化图像gray_binary;在本例中将大于灰度阈值的区域或像素点赋值为0,小于等于灰度阈值的区域或像素点赋值为255;灰度阈值根据灰度图像的平均灰度值获得;[0154]步骤33:对灰度二值化图像gray_binary做形态学开运算处理;[0155]步骤34:将经由步骤2获得的待处理图像由rgb空间转至hsv空间,获得hsv图像;[0156]步骤35:对hsv图像进行二值化处理,其中将设定hsv范围内的像素点赋值为255,其余像素点赋值为0,获得膜条的阴影二值化图像black;表示为:[0157][0158]在本例中[h1,s1,v1]为[0,0,0],[h2,s2,v2]为[180,255,50];black表示阴影二值化图像中的像素;h,s,v表示hsv图像中像素的色调h、饱和度s和明度v;[0159]步骤36:将灰度二值化图像gray_binary和阴影二值化图像black做与操作,获得与操作图像,记为and_gray_black;[0160]步骤37:在阴影二值化图像black中减去与操作图像and_gray_black,获得阴影区域图像;[0161]步骤38:将二值化图像binary减去阴影区域图像,获得膜条区域二值图。[0162]在步骤38中,获得膜条区域二值图后,还会对膜条区域二值图进行形态学闭运算,即先膨胀后腐蚀,填补膜条区域图像中的空洞;随后进行形态学开运算,去除噪声块,获得膜条区域掩膜图morph,其中在膜条区域掩模图中,灰度值为0表示非膜条区域,255表示膜条区域。[0163]如图8-17所示,所述步骤4中,因为膜条是逐一粘贴在膜条读取板上的,难免会出现膜条粘连的情况,而膜条的粘连会极大的干扰膜条的识别,因此需要识别粘连的膜条,并对其进行分割。其中粘连膜条区域的分割包括如下步骤:[0164]步骤401:根据膜条区域掩膜图morph,在膜条区域掩模图morph上进行连通域查找,判断膜条连通域的面积;膜条连通域表示膜条区域的连通域;若该膜条连通域的面积满足设定的单膜条区域面积范围,则认为是单膜条,结束步骤;若该膜条连通域的面积满足设定的双膜条区域面积范围,则认为是双模条粘连,进入步骤402;若该膜条连通域的面积满足设定的多膜条区域面积范围,则认为是多膜条粘连,舍弃该膜条区域,并在扫描图像的对应位置上或膜条区域掩膜图morph进行标记,结束步骤;[0165]步骤402:根据膜条连通域设置外接正矩形框;[0166]步骤403:根据外接正矩形框,裁切出粘连膜条矩形框图像cut_image;[0167]步骤404:对粘连膜条矩形框图像cut_image进行距离变换,获得距离变换图像distance_image;距离变换图像为灰度图像,其内像素的灰度值表示该像素与距其最近的背景像素之间的距离;[0168]步骤405:计算距离变换图像distance_image中的最大距离值max_dis;[0169]步骤406:对距离变换图像distance_image进行二值化处理,获得粘连区域二值化图像adjoin_image;其中二值化的分割阈值为0.8*max_dis;[0170]步骤407:根据粘连区域二值化图像adjoin_image,计算获得图像的质心坐标center;[0171]步骤408:对粘连区域二值化图像adjoin_image进行形态学膨胀处理,获得图像dilate_image;[0172]步骤409:将粘连膜条矩形框图像cut_image与图像dilate_image做差,得到非粘连区域图像diff;[0173]步骤410:对非粘连区域图像diff进行距离变换处理,在获得的距离变换图像中寻找最大值;并根据最大值对距离变换图像进行二值化处理,得到膜条骨架binary;其中二值化处理的阈值为0.7倍最大值;[0174]步骤411:计算膜条骨架binary的区域面积binary_area,以及粘连区域二值化图像adjoin_image的区域面积center_area;[0175]步骤412:对膜条骨架binary进行直线拟合,根据拟合直线的长度,判断膜条粘连的情况;若拟合直线长于设定值,则认为膜条为左右粘连,进入步骤413;若拟合直线没有长于设定值,则认为膜条为上下粘连,进入步骤414;[0176]步骤413:计算膜条骨架binary的质心,在质心处设置竖直方向的分割线,在本例中为y轴方向,进入步骤417;[0177]步骤414:判断区域面积binary_area以及区域面积center_area的大小;若区域面积binary_area小于设定值一,区域面积center_area大于设定值二,则认为膜条上下粘连区域较大,进入步骤415;否则认为膜条上下粘连区域较小,进入步骤416;[0178]步骤415:膜条上下粘连区域较大,则对粘连区域二值化图像adjoin_image进行直线拟合,获得拟合直线的斜率,并且获得粘连区域二值化图像adjoin_image的质心;根据拟合直线的斜率和质心获得分割线,进入步骤417;[0179]步骤416:膜条上下粘连区域较小,则分别计算上下两条粘连膜条的斜率,并得出斜率均值;并获得粘连区域二值化图像adjoin_image的质心;根据斜率均值和质心获得分割线,进入步骤417;[0180]步骤417:根据分割线分割膜条,获得单膜条区域,结束步骤。[0181]所述步骤416中,斜率均值的计算包括如下步骤:[0182]步骤4161:对膜条骨架binary进行连通域分析,对每个连通域进行直线拟合操作;[0183]步骤4162:根据拟合的直线,获得其斜率;[0184]步骤4163:将距离相近的连通域进行合并,得到相邻连通域的斜率均值。[0185]如图18所示,所述步骤5中对步骤4获得的膜条区域进行倾斜校正,倾斜校正包括如下步骤:[0186]步骤51:根据膜条区域掩膜图morph,进行连通域查找,获得膜条连通域;根据膜条连通域设置外接正矩形框rect,并记录外接正矩形框rect的长、宽、边角坐标以及膜条偏转角angle;在本例中边角坐标为左上角坐标;[0187]步骤52:在外接正矩形框rect内,统计像素值为255的像素的个数,并计算其与外接正矩形框rect内总像素个数的比值,记为白块比值white_block_rate;[0188]步骤53:判断白块比值white_block_rate与设定阈值的大小关系;若白块比值white_block_rate大于设定阈值,则认为膜条偏转角angle计算正确,结束步骤;否则,认为膜条偏转角angle计算错误,修正膜条偏转角angle,结束步骤。[0189]所述步骤51中的连通域查找通过seed-filling种子填充法实现;膜条偏转角angle为膜条连通域的下边缘与设定x轴的夹角。[0190]所述步骤52中,在一些其他实施方式,也可以统计像素值为0的像素的个数,并计算其与外接正矩形框rect内总像素个数的比值,记为黑块比值,并进行后续步骤。[0191]所述步骤53中,由于存在污点等因素干扰,会导致膜条偏转角angle计算错误,因此需要对其进行修正;膜条偏转角angle的修正包括如下步骤:[0192]步骤531:将步骤2获得的待处理图像转换为灰度图像,根据外接正矩形框rect的位置,分割出膜条灰度图像rect_strip;[0193]步骤532:对膜条灰度图像rect_strip,在设定的角度范围内,以设定的步长进行转动,计算每次旋转后的图像的核范数;在本例中设定角度范围为-5°~ 5°,步长0.1°;[0194]步骤533:以核范数最大的旋转角度,作为修正后的膜条偏转角angle。[0195]所述步骤532中核范数的计算通过奇异值分解法获得。[0196]如图19、20所示,所述步骤6中整理膜条表格的过程包括如下步骤:[0197]步骤61:在步骤2获得的待处理图像中,根据阴影区域图像去除到处理图像中的阴影;[0198]步骤62:通过分割线以及外接正矩形框,截取单膜条图像;[0199]步骤63:根据膜条偏转角angle,对截取单膜条图像进行转动,获得膜条图像big_strip;[0200]步骤64:将膜条图像进行整理,获得膜条集strip;膜条集strip包括膜条区域的长、宽以及左上角坐标;[0201]步骤65:识别膜条集strip,获得膜条列表并统计膜条序号。[0202]所述步骤64中的膜条集与待处理图像相似,在膜条集中仅对待处理图像中的膜条位置等进行了修正,并且记录了每条膜条的位置信息;由于待处理图像中的膜条分为两列,因此膜条表格中也有两列。需要说明的是在本例中,列表示y方向,即竖直方向;行表示x方向,即水平方向。[0203]所述步骤65中识别膜条集strip,获得膜条列表并统计膜条序号的步骤包括:[0204]步骤651:将步骤2获得的待处理图像转换为灰度图像;[0205]步骤652:计算灰度图像的拉普拉斯边缘lap;[0206]步骤653:根据在前述步骤中获得的膜条区域掩膜图morph,在拉普拉斯边缘lap中去除拉普拉斯边缘包裹的膜条区域;在本例中将膜条区域置0;[0207]步骤654:将拉普拉斯边缘lap向x轴方向上投影,获得水平方向上的投影直方图hist;在本例中投影直方图通过直方图投影算法获得;[0208]步骤655:根据设定的表格间隔space_table以及表格线投影累积peak_table,在投影直方图hist中,将满足表格间隔space_table以及表格线投影累积peak_table的阈值的波峰位置记为表格线,并对缺失的表格线进行相对位置补全,并获得表格位置集box;其中表格位置集box记录了表格线分割出来的每个表格框的位置信息;[0209]步骤656:根据膜条集strip中的膜条左上角坐标的x轴坐标,将膜条集分割为两列,左膜条集strip_left以及由膜条集strip_right;[0210]步骤657:将分割出来的左膜条集strip_left以及由膜条集strip_right,沿着y轴方向,从上到下进行排序;[0211]步骤658:在表格位置集box中寻找每个表格框的中心位置,对每个中心位置,从上到下标记对应序号,获得序号列order_left,order_right;并对序号列order_left,order_right进行查重更新;[0212]步骤659:合并序号列order_left,order_right、左膜条集strip_left以及右膜条集strip_right以及对应的表格位置集box,获得膜条列表;在本例中序号列order_left排在序号列order_right前部。[0213]在步骤655中,表格位置集box中记录了膜条读取板上的设置的表格框的位置信息,其中膜条粘贴与表格框内。其中表格位置集box也包含两列表格的位置数据,所以在步骤658中能够获得序号order_left,order_right。[0214]在步骤659中,获得的膜条列表的中的每个序号对应的表格位置集box的位置与膜条集strip中膜条的位置相对应,所以可能出现序号对应的膜条图像为空的情况。[0215]如图21所示,所述步骤7识别并定位膜线的过程包括如下步骤:[0216]步骤71:根据膜条列表中的膜条图像,确定质控膜线以及颜色较深的待选膜线一的位置;[0217]步骤72:根据膜条图像获得灰度图像,并由灰度图像的灰度变化率,确定膜条上的待选膜线二的位置;[0218]步骤73:根据质控膜线以及设定的膜线间距,在待选膜线一和待选膜线二中筛选出膜线集。[0219]所述步骤71中,在一些其他实施方式中,也可以通过现有的图像处理方法识别膜条读取板图像,并对图像上的膜条区域进行分割处理,获得膜条列表。其中质控膜线以及待选膜线一的获取包括如下步骤:[0220]步骤711:对膜条列表中的膜条图像进行多尺度加强,获得单通道增强图像;[0221]步骤712:将膜条图像转换为灰度图像;并将单通道增强图像和灰度图像做差值,获得差值图像;[0222]步骤713:根据差值图像,在膜条图像的设定距离范围内寻找质控膜线;并寻找颜色较深的待选膜线一。[0223]在步骤711中,获得增强图像的方法,首先将膜条图像进行高斯模糊处理,在本例中设置有三个高斯模糊的尺度,分别为5,9,19,根据三个尺度分别获得三幅高斯模糊图像;随后将三幅高斯模糊图像与膜条图像加权融合,获得单通道增强图像。[0224]在步骤712中,差值图像通过如下式子获得:[0225][0226]其中,dst表示差值图像中的对应像素的灰度值;en_s表示单通道增强图像中对应像素的值;gr_s表示灰度图像中对应像素的灰度值。在获得差值图像后,对图像做二值化处理,其中将大于设定阈值的像素赋值为0,将小于等于设定阈值的像素赋值为255;随后进行形态学处理,去除噪声,获得二值化差值图像。[0227]在步骤713中,首先对二值化差值图像做y方向上的投影直方图,并根据膜条图像的灰度图像做y方向上的均值直方图,在本例中均值直方图为膜条图像中每列像素的均值,灰度图像为步骤651中获得的灰度图像;随后在膜条图像上的设定距离区域内,依据判断准则,寻找质控膜线;最后根据投影直方图中的波峰位置,寻找满足阈值要求的波峰位置,作为待选膜线一。在本例中,质控膜线的判断准则为投影直方图中的波峰超过波峰设定阈值,同时均值直方图也超过均值设定阈值的膜线,其中波峰设定阈值为该膜条的投影直方图中的最大波峰的0.8倍,均值设定阈值为灰度值180;需要说明的是,若在膜条图像上的设定距离区域内没有找到符合判断准则的质控膜线,则在该设定距离区域内选择投影直方图中波峰最大的值,并将其对应的位置作为质控膜线的位置。[0228]所述步骤72中,确定膜条上的待选膜线二的过程包括如下步骤:[0229]步骤721:对膜条图像的灰度图进行gamma增强算法,获得增强图像gamma_strip;[0230]步骤722:对增强图像gamma_strip做y方向的均值直方图gamma_mean_hist,经过高斯滤波;根据均值直方图gamma_mean_hist,获得y方向上的斜率直方图slop_hist;其中斜率直方图slop_hist表示均值直方图的斜率;[0231]步骤723:分别统计斜率直方图slop_hist中小于设定值一的点,以及大于等于设定值二的点;在本例中设定值一为-1.5,设定值二为0;[0232]步骤724:统计小于设定值一的连续的点的数量,以及大于等于设定值二的连续的点的数量;寻找满足设定的点数量要求的连续点集一以及连续点集二;在本例中设定的点数量要求为大于6个连续点,包括小于设定值一的六个以上连续点组成的连续点集一以及大于等于设定值二的六个以上连续点组成的连续点集二;需要说明的是在一些其他实施方式中可以对小于设定值一的点数和大于等于设定值二的点数分别设置其他数量阈值;[0233]步骤725:在统计斜率直方图slop_hist中,选择相邻的连续点集一以及连续点集二,并计算两个点集之间由负转正的过零点,获得待选模线二。[0234]在步骤722中,斜率直方图通过如下式子获得:[0235][0236]其中,slophist表示斜率直方图slop_hist中的值;gammameanhist[i]表示均值直方图gamma_mean_hist中位置i的值;bin表示均值直方图gamma_mean_hist中的最大位置的值。[0237]在步骤73中,膜线集包括膜线的位置信息;筛选膜线集的过程包括如下步骤:[0238]步骤731:根据质控膜线的位置以及设定的膜线间隔,确定初选膜线集;其中初选膜线集包括质控膜线的位置,以及根据膜线间隔计算获得的后续膜线的位置及对应的位置序号;在本例中后续膜线的位置序号共28个,加上质控膜线,在膜条上共29条膜线;[0239]步骤732:遍历待选膜线一和待选膜线二,计算其中的每一条膜线与初选膜线集中的位置的最近距离;筛选出最小的最近距离,将对应的膜线作为最终膜线集中的膜线,记录该膜线的位置信息,并将该膜线从待选膜线一和待选膜线二中剔除,将该位置序号从初选膜线集中剔除;[0240]步骤733:根据该模线与质控膜线的距离,以及该模线对应的位置序号,更新初选膜线集中的其他膜线的位置;[0241]步骤734:判断初选膜线集中的位置序号是否均以剔除;若均已剔除,则表示获得了最终膜线集,结束步骤;否则返回步骤732。[0242]在步骤733中,若质控膜线的位置序号为1,根据位置关系筛选出的模线的位置序号为n,且该模线与质控膜线的距离为l,则获得新的膜线间隔为并根据新的膜线间隔更新其余位置序号对应的膜线的位置。[0243]所述步骤8,在一些其他实施方式中膜条上污点的去除也可以设置在步骤7之前,即先完成膜条上污点的去除,再完成膜条上膜线的识别;其中膜条上的污点去除包括如下步骤:[0244]步骤81:将膜条列表中的膜条图像通过高斯模糊操作,增强图像;[0245]步骤82:对增强后的图像做差值图像;其中做差值图像是为了去除膜条图像上的噪声;[0246]步骤83:识别图像中的污点,并去除,获得去污点图像。[0247]所述步骤81中,在本例中设置有三个高斯模糊的数值,根据三个高斯模糊的数值对膜条图像进行高斯模糊处理,并将模糊后的图像与原膜条图像进行加权融合,获得单通道增强图像;在本例中权值为设定值。[0248]所述步骤82中差值图像的获取包括如下步骤:[0249]步骤821:将膜条列表中的膜条图像转换为灰度图像;[0250]步骤822:将步骤81中获得的增强图像与步骤821中获得的灰度图像做差值,获得差值图像diff1;[0251]步骤823:将步骤821中获得的灰度图像与步骤81中获得的增强图像做差值,获得差值图像diff2;[0252]步骤824:将差值图像diff1与差值图像diff2融合,获得图像diff3;[0253]步骤825:将图像diff3做二值化处理以及形态学处理,获得去噪差值图像diff3_binary;其中将大于设定阈值的像素赋值为0,将小于等于设定阈值的像素赋值为255。[0254]所述步骤83中,识别去除图像中的污点包括如下步骤:[0255]步骤831:统计去噪差值图像diff3_binary中每列像素上的黑色像素个数sum_black以及白色像素个数sum_white;[0256]步骤832:若白色像素个数sum_white小于设定阈值,则认为该列像素中的白色像素为污点;在本例中设定阈值为膜条高度的一半;[0257]步骤833:获取存在污点的像素列,在灰度图中找出存在污点的像素列,并将除污点外的像素点的像素灰度值均值,替换该像素列中的污点区域;获得去污点图像。[0258]如图22-27所示,所述步骤9中膜线浓度值的计算包括如下步骤:[0259]步骤91:根据去污点图像,获取膜线的直方图;[0260]步骤92:根据膜线的直方图,计算每条膜线上的光密度值,并获得均值光密度值;[0261]步骤93:根据质控线的均值光密度值与设定的质控线光密度,计算修正系数correction_factor,并对其他膜线位置的均值光密度值进行修正;[0262]步骤94:将膜线修正后的均值光密度值带入标定曲线方程;其中标定曲线方程可以为三次样条方程或者四参数拟合方程;在本例中标定曲线方程为四参数拟合方程。[0263]在步骤91中,获取膜线的直方图,包括如下步骤:[0264]步骤911:根据去污点图像,计算其在y方向上的灰度均值直方图,以及在y方向上的cv直方图;[0265]步骤912:对均值直方图进行高斯滤波;[0266]步骤913:对高斯滤波后的均值直方图做一阶导数,获取斜率直方图;其中斜率直方图的获取方法与步骤722中的一致;[0267]步骤914:根据步骤7中获得的膜线集以及步骤913中获得的斜率直方图,获得斜率方波直方图;[0268]步骤915:根据斜率方波直方图获得基线直方图。[0269]在步骤914中,获得斜率方波直方图首先需要在膜线集中获得每条膜线的位置,并根据设定的范围,在每条膜线的左右两侧筛选出膜线区域,在本例中设定的范围为-15~ 15个像素;将膜线区域的位置与步骤913中获得斜率直方图相结合,在斜率直方图中的每个膜线区域内,统计负斜率的起始位置start,由负转正的过零位置trough,以及正斜率的结束位置end,其中若负斜率的起始位置start超出该模线范围,则取-15,同理若正斜率的结束位置end超出该膜线范围,则取 15;在斜率直方图上将区间[start,trough]之间的点赋值为-1,将区间[trough,end]之前的点赋值为 1,斜率直方图上的其他点赋值为0,获得斜率方波直方图。[0270]在步骤915中,对获得的斜率方波直方图中的非0点位置,在灰度均值直方图中内由起始位置start到结束位置end,做线段插值;对0点位置,在灰度均值直方图中,保留该位置的灰度均值的数值;获得基线直方图。[0271]在步骤92中,计算膜线的均值光密度值,包括如下步骤:[0272]步骤921:根据膜线集以及基线直方图,计算每条膜线上的光密度值,得到光密度直方图;其中光密度的计算公式如下:[0273][0274]其中,od代表光密度,base代表基线值,mean代表灰度均值;[0275]步骤922:根据光密度直方图以及膜线集,计算每条膜线上的均值光密度;在本例中均值光密度为统计0.8倍的波峰光密度以内光密度获得的均值。[0276]在步骤94中,四参数拟合方程常被运用于免疫检测领域,用于描述吸光度随抗原浓度变化的规律。在本例中,四参数拟合方程如下所示:[0277][0278]其中x值表示膜线的均值光密度值;y表示膜线的计算浓度值;a,b,c,d分别为四参数拟合方程中的四个设定含义的曲线参数,a表示曲线上的渐近线估值,b表示曲线的斜率,c表示最大结合一半时对应的剂量,d表示曲线下渐近线估值,在本例中曲线为均值光密度值的变化曲线。[0279]在步骤9中,计算出每条膜线对应的浓度值后,还会将浓度值与膜线的位置对应显示。[0280]在实施的过程中,通过对粘连膜条的分割、膜条的倾斜校正以及对膜条区域的识别统计,将膜条读取板上的随机粘贴的膜条,整理成均匀排列的膜条列表,并且将膜条读取板上的多列膜条,整理为一列,方便后续对膜条上膜线的识别;通过对膜线的定位,包括确定质控膜线以及其他的待选膜线,将其他待选膜线与根据质控膜线获得的初选膜线集一一比对,选出合适的待选膜线,并实时对初选膜线集进行修正,保证最终确定的膜线集中的膜线的位置准确;通过筛选污点,并将同列像素中的非污点像素的灰度均值替换污点像素,完成膜条去污处理,避免污点干扰后续的膜线浓度值检测;通过质控膜线的均值光密度,对其他膜线的均值密度进行修正,消除扫描仪在扫描图像过程中产生的扫描亮度偏差等;通过四参数拟合方程,实现膜线的均值光密度值与膜线的浓度值之间的转换。[0281]以上描述仅是本发明的一个具体实例,不构成对本发明的任何限制。显然对于本领域的专业人员来说,在了解了本
发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修改和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献