CN114782413A - 一种基于显微镜图像的星杆藻类细胞统计方法 - Google Patents
一种基于显微镜图像的星杆藻类细胞统计方法 Download PDFInfo
- Publication number
- CN114782413A CN114782413A CN202210639475.XA CN202210639475A CN114782413A CN 114782413 A CN114782413 A CN 114782413A CN 202210639475 A CN202210639475 A CN 202210639475A CN 114782413 A CN114782413 A CN 114782413A
- Authority
- CN
- China
- Prior art keywords
- image
- line segments
- algae
- star
- calculating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 241000195493 Cryptophyta Species 0.000 title claims abstract description 116
- 238000001000 micrograph Methods 0.000 title claims abstract description 14
- 238000007619 statistical method Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 56
- 238000001514 detection method Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 13
- 238000007781 pre-processing Methods 0.000 claims abstract description 8
- 230000002708 enhancing effect Effects 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims description 28
- 241000258957 Asteroidea Species 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 230000003044 adaptive effect Effects 0.000 claims description 6
- 241001300645 Astrococcus Species 0.000 claims description 5
- 238000012795 verification Methods 0.000 claims description 5
- 230000001186 cumulative effect Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000013136 deep learning model Methods 0.000 abstract description 5
- 238000005457 optimization Methods 0.000 abstract description 3
- 238000012549 training Methods 0.000 abstract description 2
- 238000004364 calculation method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 101100326341 Drosophila melanogaster brun gene Proteins 0.000 description 3
- 241001443610 Aschersonia Species 0.000 description 2
- 241000258746 Asterina <sea star> Species 0.000 description 2
- 241001263604 Stellera chamaejasme Species 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000010902 straw Substances 0.000 description 2
- 241000027431 Anoplophora Species 0.000 description 1
- 241000209441 Ceratophyllum Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/10—Image enhancement or restoration using non-spatial domain filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10056—Microscopic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20048—Transform domain processing
- G06T2207/20061—Hough transform
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30242—Counting objects in image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于显微镜图像的星杆藻类细胞统计方法,包括:采集藻类图像,对藻类图像进行预处理,去噪和增强图像的对比度;对增强后的灰度图像上进行二值化处理,获得二值图像;基于二值图像进行星杆藻类细胞检测,获取星杆藻类细胞的属性数据,根据属性数据验证是否符合星杆藻类细胞的特征;统计满足星杆藻类细胞特征的检测数据,获得星杆藻类细胞的细胞个数。本发明不需要在深度学习模型中直接检测星杆藻类细胞,减少了数据标注工作,提高了模型训练和模型优化的效率,并且具有广泛的适用性。
Description
技术领域
本发明属于水生态环境监测技术领域,特别是涉及一种基于显微镜图像的星杆藻类细胞统计方法。
背景技术
利用显微镜和高清工业相机来采集藻类图像,然后通过深度学习检测模型识别出星杆藻类和它的像素坐标,需要设计一种图像模式识别方法来统计图像中星杆藻类的细胞个数。
现有的方法是直接对星杆藻类细胞进行标注,然后通过深度学习模型来检测图像中星杆藻类细胞的个数,容易产生漏检和误检测问题。因此,本发明提出一种基于显微镜图像的星杆藻类细胞统计方法以解决现有技术中存在的问题。
发明内容
为了克服现有技术存在的不足,本发明提供了一种基于显微镜图像的星杆藻类细胞统计方法。先通过深度学习模型识别出星杆藻类和它的位置坐标,然后截取出该藻类的图像数据,通过图像模式识别技术来统计出它的细胞个数。
为实现上述目的,本发明提供了如下方案:一种基于显微镜图像的星杆藻类细胞统计方法,包括:
采集藻类图像,对所述藻类图像进行预处理,去噪和增强图像的对比度;对增强后的灰度图像上进行二值化处理,获得二值图像;
基于所述二值图像进行星杆藻类细胞检测,获取所述星杆藻类细胞的属性数据,根据所述属性数据验证是否符合星杆藻类细胞的特征;
统计满足星杆藻类细胞特征的检测数据,获得所述星杆藻类细胞的细胞个数。
优选地,对所述藻类图像进行预处理,去噪和增强图像的对比度的过程包括,
首先对所述藻类图像进行缩放处理,将缩放后的彩色图像转换为灰度图像;对所述灰度图像进行高斯滤波去噪,并采用对比度受限的自适应直方图均衡化算法对所述灰度图像进行对比度拉伸操作,增强图像的对比度;再通过高斯模糊化对所述藻类图像进行二次去噪处理。
优选地,对增强后的灰度图像上进行二值化处理,获得二值图像的过程包括,
采用自适应阈值分割方法对增强后的灰度图像进行二值化处理,获得初始二值图像,基于所述初始二值图像提取外轮廓数据;计算外轮廓的包围矩形,获得所述包围矩形的包围参数;将所述包围参数与预设包围参数阈值进行比较,在初始二值图像上将小于阈值的包围区域进行置零处理,获得所述二值图像。
优选地,基于所述二值图像进行星杆藻类细胞检测,获取所述星杆藻类细胞的属性数据的过程包括,
通过累计概率霍夫变换检测直线的方法对所述二值图像上进行直线检测;根据直线的一般式方程,计算直线的属性参数;根据所述属性参数对角度相似的直线进行分组;
根据分组结果,分别验证每组平行线段之间的最小间距是否小于设定的阈值;如果组内平行线段之间最小的间距大于设置的阈值,将该组平行线段分解成多组满足间距要求的平行线段;否则将组内所有线段的端点存放在一起,计算所述端点的最小包围矩形;
分析各个分组的最小包围矩形的特征,删除误检测的无效最小包围矩形。
优选地,所述删除误检测的无效最小包围矩形包括删除长度小于设置阈值的最小包围矩形、删除平行最小包围矩形、验证最小包围矩形的图像占比;
所述删除长度小于设置阈值的最小包围矩形的过程包括,设置最小细胞长度比例参数,基于所述最小细胞长度比例参数与图像尺寸,获得细胞最小长度;将所述细胞最小长度与图像包围矩形长度进行比较,删除小于细胞最小长度的最小包围矩形;
所述删除平行最小包围矩形的过程包括,计算最小包围矩形之间的角度偏差值;设置角度偏差阈值,将计算得到的角度偏差值与所述角度偏差阈值进行比较,当所述角度偏差值的绝对值小于所述角度偏差阈值时,则进一步计算最小包围矩形之间的最小距离;如果最小包围矩形之间的最小距离小于设置的阈值,那么将删除平行最小包围矩形的两组数据。
优选地,根据所述属性数据验证是否符合星杆藻类细胞的特征的验证过程包括,
计算最小包围矩形的中间线段,通过中间线段来表示星杆藻类细胞;计算中间线段之间的交点,验证中间线段的有效性;
当一个中间线段与其他中间线段的交点符合星杆藻类细胞分布规则时,对所述中间线段进行计数加1;统计所有的中间线段,找出计数最高的中间线段作为主线段;
分别计算主线段与其他中间线段的交点;分析计算各个线段的交点属性,将不满足规律的中间线段进行删除处理。
优选地,计算最小包围矩形的中间线段的过程包括,计算最小包围矩形的顶点坐标、中间坐标点,基于所述中间坐标点组成线段,计算所述线段的属性数据获得最小包围矩形的中间线段。
优选地,计算中间线段之间的交点,验证中间线段的有效性的过程包括获取线段交点类型、删除无效线段;
所述获取线段交点类型的过程包括验证主线段与其他线段的交点是否在图像内,在图像内计算主线段与其他线段端点之间的最小距离;基于所述最小距离判断交点是否在线段内,在线段内计算交点与线段最大长度的比值,根据所述比值得到不同的线段交点类型;
所述删除无效线段的过程包括删除计数为0的线段与交点属性不符合要求的线段,计算所有与主线段相交的交点均值,计算所有交点与所述交点均值之间的偏差,删除所述偏差大于预设偏差阈值的线段。
优选地,统计满足星杆藻类细胞特征的检测数据,获得所述星杆藻类细胞的细胞个数的过程包括,
重新计算各线段之间的交点,并获取交点均值坐标;
基于所述交点均值坐标,重新计算各线段的交点属性;
通过所述交点属性和所述交点均值坐标,计算每条线段对应的星杆藻细胞个数,统计获取图像中星杆藻类细胞总数。
本发明与现有技术相比,具有以下有益效果:
1、不需要在深度学习模型中直接检测星杆藻类细胞,减少了数据标注工作,提高了模型训练和模型优化的效率。
2、图像中星杆藻类细胞相互连成放射星状群体。本发明充分利用了该特征,首先检测直线,然后设计了直线与交点相互验证的方法,较好地排除了误检测数据,并能够精确地检测出图像中的藻类细胞,获得了比深度学习模型更好的统计效果。
3、本发明提出的方法不仅可以用于星杆藻类细胞统计,调整下参数后也可应用于集星藻类的细胞统计,具有广泛的适用性。
4、星杆藻类细胞统计方法为独立的模块,便于算法后期的优化和维护。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的整体流程图;
图2是本发明实施例的图像预处理流程图;
图3是本发明实施例的图像二值化流程图;
图4是本发明实施例的检测星杆藻类细胞流程图;
图5是本发明实施例的删除无效的最小包围矩形流程图;
图6是本发明实施例的验证星杆藻类细胞属性数据流程图;
图7是本发明实施例的计算最小包围矩形的中间线流程图;
图8是本发明实施例的计算最小包围矩形的中间线示意图;
图9是本发明实施例的星杆藻类细胞与细胞间交点示意图;
图10是本发明实施例的验证线段是否有效流程图;
图11是本发明实施例的计算线段交点类型流程图;
图12是本发明实施例的删除无效的线段流程图;
图13是本发明实施例的统计星杆藻类细胞个数流程图;
图14是本发明实施例的星杆藻类细胞个数统计效果图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明提供了一种基于显微镜图像的星杆藻类细胞统计方法,包括以下几个步骤:
S1、图像预处理,去噪和增强图像的对比度。
S2、在增强后的灰度图像上进行二值化处理。
S3、从二值图像上检测星杆藻类细胞。
S4、为检测出的星杆藻类细胞计算它的属性数据,并验证它是否符合星杆藻类细胞的特征。
S5、统计满足星杆藻类细胞特征的检测数据,计算出它的细胞个数。
本发明中步骤S1中还包括:
通过高斯模糊化对图像进行去噪处理;
采用CLAHE(对比度受限的自适应直方图均衡化)算法对灰度图像进行对比度拉伸操作。
本发明中步骤S2中还包括:
采用自适应阈值分割方法对灰度图像进行二值化处理。
从二值图像上,提取出外轮廓数据。
计算每个外轮廓的包围矩形和它的包围面积。
在二值图像上,将面积、宽或高小于阈值的包围矩形区域进行置零处理。
本发明中步骤S3中还包括:
从图像上看星杆藻类细胞的直线特征较明显。因此,我们通过累计概率霍夫变换检测直线的方法从二值图像上检测直线数据。
采用直线的一般式方程,计算直线的属性参数。
在二值图像上,一个星杆藻类细胞可以检测出多条平行的直线。因此,分析所有检测的直线,找出角度相似的直线,并分组存放。
按分组,分别验证每组平行线段之间的最小间距是否小于设定的阈值。如果组内平行线段之间最小的间距大于设置的阈值,那么将该组平行线段分解成多组满足间距要求的平行线段。
将组内所有线段的端点存放在一起,然后计算这些端点的最小包围矩形。
分析各个分组的最小包围矩形的特征,删除明显的误检测的数据。
本发明中步骤S4中还包括:
计算最小包围矩形的中间线段,通过中间线段来表示星杆藻类的细胞。
计算中间线段之间的交点。
星杆藻类细胞呈现较强的分布规律,通过这些规律,可以验证中间线段的有效性。
当一个中间线段与其他中间线段的交点符合星杆藻类细胞分布规则时,对该中间线段进行计数加1。
统计所有的中间线段,找出计数最高的中间线段作为主线段。
分别计算主线段与其他中间线段的交点。
分析计算的各个线段的交点属性,将不满足规律的中间线段进行删除处理。
本发明中步骤S5中还包括:
重新计算各线段之间的交点,并计算交点的均值坐标。
通过交点均值坐标,重新计算各线段的交点属性。
结合线段的交点属性和交点均值坐标,计算每条线段对应的星杆藻细胞个数,统计图像上星杆藻类细胞总数。
实施例1
参照图1,本发明公开了一种基于显微镜图像的星杆藻类细胞统计方法,它包括以下步骤:
⑴图像预处理:对灰度图像进行去噪和增强对比度的操作;
⑵图像二值化:从灰度图像中检测出星杆藻类细胞的二值图像;
⑶检测星杆藻类细胞:从二值图像中查找直线,然后将这些直线按角度进行聚类,并通过平行线段的端点坐标找出藻类细胞的最小包围矩形;
⑷验证星杆藻类细胞属性数据:通过最小包围矩形,计算出它的中间线段,用中间线来表示星杆藻类细胞。结合线段的角度、长度和交点坐标等信息,将不符合星杆藻类细胞特征的数据进行删除处理;
⑸统计星杆藻类细胞个数:首先重新计算各线段的交点坐标,统计出交点的均值坐标,然后通过交点均值坐标来更新所有线段的交点属性,最后结合线段的交点属性和交点均值坐标,计算出星杆藻类的细胞个数。
参照图2,所述图像预处理模块包括以下内容:
⑴首先对图像进行缩放处理,提高整体运行效率;
⑵将缩放后的彩色图像转换成灰度图像;
⑶对灰度图像进行高斯滤波去噪;
⑷采用CLAHE(对比度受限的自适应直方图均衡化)算法对图像进行对比度拉伸操作;
⑸由于CLAHE算法拉伸后的图像数据会存在较多噪点,需要通过高斯模糊化算法来进一步降噪。
参照图3,所述图像二值化包括以下内容:
⑴采用自适应阈值分割(adaptiveThreshold)法来进行图像二值化处理,得到binaryImg。其中,星杆藻类细胞区域为白色,对应的像素值为255;其它区域为黑色,对应的像素值为0;
⑵在binaryImg图像上查找外轮廓数据;
⑶对每个外轮廓数据,计算它的包围矩形,获得包围矩形的像素长、像素宽和像素面积参数;
⑷遍历所有外轮廓的包围矩形,如果它的像素长、宽或面积小于设置的阈值,那么在binaryImg图像上,将该包围矩形区域全部像素值设置为0;
⑸通过此方法,可以将明显不符合星杆藻类细胞特征的数据进行过滤,降低后面算法处理的复杂度。
参照图4,所述检测星杆藻类细胞包括以下内容:
⑴通过累计概率霍夫变换检测直线的(HoughLineP)方法在binaryImg图像上检测出直线;
⑵构造一个直线结构体Line,它包括起点坐标sPt,终点坐标ePt,线段长度length,线段角度angle,直线一般式方程(Ax+By+C=0)的三个参数A、B和C,交点类型ptType和计数器count。为每条检测出的直线,计算除了ptType和count以外的直线结构体参数;
⑶构造一个vector<LineData>parallelLines变量,用于将步骤⑵计算出的直线按照角度相似性规律进行分组存放。其中LineData是一个结构体,它包括vector<Line>lines变量,布尔变量isNeedSplit,最小包围矩形rect变量和4个顶点坐标vector<cv::Point2f>pts变量。其中lines变量用于存放当前组内角度相似的直线;isNeedSplit变量表示该组平行线是否需要进行拆分操作;rect表示所有lines变量内线段端点组成的最小包围矩形,它也是一个结构体变量,包括width、height、angle和center这几个变量,分别表示最小包围矩形的宽、高、角度和中心点坐标。pts变量表示最小包围矩形rect的4个顶点坐标;
⑷设置一个角度阈值angleThres(10度)和vector<int>label变量,遍历计算两条直线angle变量的偏差resAngle(resAngle=fabs(line1.angle-line2.angle))。如果resAngle的值小于angleThres,那么将这两条直线作为一组存放在parallelLines的lines变量中,并在label中对它们进行标记,防止同一条直线多次参与计算;
⑸经过步骤⑷计算后,parallelLines变量下的lines变量,实际上是按组存放了相互近似平行的直线,为了表述方便,这里采用平行线进行描述。计算lines变量下任意两条直线之间的最小距离。计算方式如下:line1和line2分别表示lines下两条不同的直线,按点到直线最小距离的公式,分别计算line1的两个端点sPt和ePt到line2的最小距离,然后对两个距离求均值,得到两条直线之间的最小距离;
⑹如果步骤⑸计算的两条直线之间的最小距离大于设置的细胞间距阈值minCellDist,那么将对parallelLines变量下的isNeedSplit变量赋值为1。认为该组平行线包含多个藻类细胞,需要对lines变量下的平行线进行拆分处理;
⑺分析parallelLines变量,找到isNeedSplit变量为1的数据,对lines变量下的平行线进行拆分操作;
⑻设置一个验证平行线间距的布尔变量bRun,默认为true,通过它来控制平行线间距的验证过程。如果parallelLines中各个lines下的平行线均满足间距阈值要求,那么将bRun赋值为false,终止平行线间距验证过程;
⑼图像上星杆藻类细胞的边缘和内部区域会生成多条平行线。另外,考虑到HoughLineP直线检测过程中,经常会出现线段检测不完整的现象。因此,我们通过计算组内所有线段端点的最小包围矩形的方式来找出星杆藻类细胞区域。具体计算方式如下:设置一个vector<cv::Point>tempPt变量,在parallelLines中按组将lines内各平行线的端点sPt和ePt坐标存放在tempPt中,然后计算tempPt中所有点的最小包围矩形,并存放在parallelLines变量下的rect中;
⑽分析parallelLines下各个最小包围矩形rect,删除不符合星杆藻特征的误检测数据。
参照图5,所述删除无效的最小包围矩形包括以下内容:
⑴计算binaryImg图像的最小尺寸(min(binaryImg.cols,binaryImg.rows)),设置一个最小细胞长度比例数值(0.2),将该系数乘以binaryImg图像的最小尺寸,得到当前图像上星杆藻类细胞的最小长度minCellLength;
⑵星杆藻类细胞在图像上的形态是长条形的,因此,分析parallelLines下各个rect变量,找出rect变量下width和height的最大值(max(rect.width,rect.height)),并将该值与minCellLength进行比较。如果小于minCellLength,那么将对parallelLines下该组数据进行删除处理;
⑶星杆藻类细胞在图像上是呈现放射星状群体形态,细胞与细胞之间不存在相互平行并且距离较近的现象。因此,根据这个特征,计算parallelLines下任意两个最小包围矩形rect变量的角度偏差值resAngle1(resAngle1=fabs(rect1.angle-rect2.angle))。设置一个角度偏差阈值angleThres1(5度),如果resAngle1小于设置的angleThres1,进一步计算这两个rect的最小距离minDist,计算方式为:计算两个最小包围矩形中心点center坐标的距离。如果minDist小于minCellDist,那么说明parallelLines中当前参与计算的两组数据都存在问题,分别将它们进行删除处理;
⑶从星杆藻类细胞图像上来看,星杆藻类细胞是群体性的藻类,整个群体占整个图像的面积比例还是较大的。根据这个特征,我们对星杆藻类细胞检测数据进行群体规律验证。首先为parallelLines中所有的rect,计算出它的4个顶点坐标,并存放在pts中。然后统计parallelLines中所有pts坐标,找出图像上星杆藻类细胞的最小x和y坐标,最大x和y坐标,它们分别用minx和miny,maxx和maxy来表示。计算整个星杆藻类细胞在x方向的最大长度maxXLength(maxXLength=maxx-minx)和在y方向的最大长度maxYLength(maxYLength=maxy-miny)。最后计算maxXLength与图像宽的比例r1,maxYLength与图像高的比例r2,如果r1和r2均小于0.8,那么,我们认为当前检测的星杆藻类细胞不满足群体性特征规律,将删除掉parallelLines中所有的数据。
参照图6,所述验证星杆藻类细胞属性数据包括以下内容:
⑴图像上星杆藻类细胞相互之间会相交,parallelLines变量中的最小包围矩形rect不便于计算交点。因此,需要将最小包围矩形rect简化为一条能够代表星杆藻类细胞的线段;
⑵构造一个vector<Line>cellLines变量,结合图像上星杆藻类细胞长条形的特点,对parallelLines变量下每个rect,计算它的中间线,然后将中间线保存在cellLines变量中;
⑶对cellLines中每条线段,分别计算它与其他线段的交点,然后通过交点坐标位置、当前线段与其他线段之间的距离等条件来验证当前线段的有效性;
⑷如果当前线段是有效的,那么对Line结构体下的计数器count进行计数加1;
⑸统计cellLines下所有的线段,找出count数最大的线段,该条线段即为主线段lineM;
⑹以lineM为基准,重新计算它与cellLines中其他线段的交点,并通过交点计算其他线段的交点类型ptType;
⑺分析cellLines中除了主线段lineM以外的其他线段,找到不符合星杆藻类细胞特征的数据,并将这些线段进行删除处理。
参照图7和图8,所述计算最小包围矩形的中间线包括以下内容:
⑴由于前面已经对parallelLines变量下每个最小包围矩形rect计算过顶点坐标,存放在pts变量下。因此,我们可以直接分析pts变量下的顶点坐标数据,pts变量对应具体的坐标点为pts[0],pts[1],pts[2]和pts[3];
⑵根据顶点坐标,计算rect每条边上的中间点坐标,分别为pt1,pt2,pt3和pt4。以pt1为例,它的坐标点计算方式为:pt1.x=(pts[0].x+pts[1].x)/2,pt1.y=(pts[0].y+pts[1].y)/2。
其他中间点坐标依次类推;
⑶分别计算中间点pt1和pt3的距离d1,pt2和pt4的距离d2。比较d1和d2的大小,如果d1大于d2,那么中间线由pt1和pt3组成,反之,中间线由pt2和pt4组成,本示例中间线由pt2和pt4组成;
⑷通过中间线两个端点,计算除了ptType和count以外的Line结构体参数。
参照图9,通过分析和观察显微镜图像下的星杆藻类细胞,我们发现星杆藻类细胞之间的交点具有以下特点:
⑴参考图例9-a,line1、line2和line3为星杆藻类细胞的中间线段。它们之间任意两条线段产生的交点均在自身线段之外。这种情况下,任意两条线段端点之间的最小距离都很小,而且任意一条线段端点和交点的最大距离与线段自身长度的比值均在一定的范围内。举例说明,假设iPt为line1与line2两条线段的交点,首先它不在line1和line2线段内。其次,通过计算line1.sPt、line1.ePt与line2.sPt、line2.ePt的最小距离,可以算出line1和line2的端点最小距离很小。最后以line1为例,计算line1.sPt和line1.ePt与交点iPt的最大距离iDist,将iDist除以line1.length,得到line1端点和交点iPt的最大距离与line1自身length的比例,该比例通常都低于1.2;
⑵参考图例9-b,line1和line2是星杆藻类细胞的中间线段,iPt是它们的交点。可以发现:这种情况下,交点iPt既在line1范围内,也在line2的范围内。但是line1和line2两条线段端点之间的最小距离却很大;
⑶参考图例9-c,line1和line2是星杆藻类细胞的中间线段,iPt是它们的交点。交点iPt有时会在line1线段上,有时不在line1线段上。但iPt肯定会在line2线段范围内,细胞分布整体呈现丁字形态。虽然line1与line2的端点最小距离很大,但是line1端点和交点iPt的最大距离与line1自身length的比例还是在一定范围内。
参照图10,所述验证线段是否有效包括以下内容:
⑴结合以上分析的星杆藻类细胞分布特征,以线段line1为示例,说明line1与其他线段line2验证有效性的过程;
⑵计算line1与line2的交点iPt,然后判断iPt是否在图像范围内。如果iPt不在图像范围内,那么line1的count不进行计数;
⑶如果交点在图像范围内,那么进一步分析line1与line2两条线段端点之间的最小距离minPtDist。计算过程为:分别计算line1.sPt与line2.sPt,line1.sPt与line2.ePt,line1.ePt与line2.sPt,line1.ePt与line2.ePt的距离,然后找到最小的端点距离;
⑷如果minPtDist小于设定的阈值,说明line1符合图9-a的特征形态,那么直接对line1的count进行计数加1;
⑸如果minPtDist大于设定的阈值,那么分析iPt的坐标是否在line1范围内,具体方法为:通过line1.sPt和line1.ePt找出x和y方向的最小、最大坐标,分别记为minx和maxx、miny和maxy,然后判断iPt的坐标是否在这个范围内;
⑹如果iPt在line1范围内,那么说明line1符合图9-b或图9-c的特征形态,对line1的count进行计数加1;
⑺如果iPt不在line1范围内,则进一步分析line1端点和交点iPt的最大距离与line1自身length的比例关系,具体计算方法为:计算iPt与line1.sPt和iPt与line1.ePt的距离,取最大距离,然后除以line1.length得到它们的比例关系。如果比值低于设置的阈值(1.2),那么认为line1符合图9-c的特征形态,对line1的count进行计数加1,反之不对count进行计数。
参照图11,所述计算线段交点类型包括以下内容:
⑴为了便于阐述,将主线段表示为lineM,其他线段表示为line1,它们的交点记为iPt,line1.ptType的值默认为0;
⑵如果iPt的坐标在图像范围外,那么将line1.ptType赋值为-1;
⑶计算lineM与line1各端点的最小距离,如果最小距离小于设置的阈值,那么将line1.ptType赋值为1;
⑷如果lineM与line1各端点的最小距离大于设置的阈值,则进一步分析交点iPt是否在line1范围内,如果iPt在line1范围内,将line1.ptType赋值为2;
⑸如果iPt不在line1范围内,则分析line1各端点到iPt的最大距离与line1.length的比值。如果比值小于设定的阈值,将line1.ptType赋值为3。
参照图12,所述删除无效的线段包括以下内容:
⑴遍历cellLines中所有的线段,删除计数器count为0的线段;
⑵遍历cellLines中所有的线段,删除ptType小于1的线段;
⑶重新计算cellLines中各线段与主线段的交点,并对这些交点计算均值坐标ptMean;
⑷计算各个交点与ptMean坐标的距离,如果某个交点与ptMean的距离大于设置的阈值,那么将该交点对应的线段进行删除处理。
参照图13,所述统计星杆藻类细胞个数包括以下内容:
⑴计算cellLines中线段与线段的交点,然后对交点求均值坐标;
⑵以均值坐标为基准,对cellLines中所有线段,重新计算ptType的属性;
⑶根据线段的ptType属性和均值坐标,计算当前线段的细胞个数。具体方法为:如果线段的ptType为1或3,那么当前线段的细胞个数计数为1。如果线段的ptType是2,则进一步计算当前线段两个端点sPt和ePt与均值交点的最大距离,如果该距离与线段length的比值小于设置的阈值(0.7),则该线段的细胞个数计数为2;
⑷将cellLines中所有线段计算出来的细胞个数进行相加,获得星杆藻类细胞总个数。
参照图14,星杆藻类图像左上角深色数字为本发明统计的细胞个数,下方亮色的数字为人工统计的星杆藻类细胞个数。
以上所述的实施例仅是对本发明的优选方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
Claims (9)
1.一种基于显微镜图像的星杆藻类细胞统计方法,其特征在于,包括:
采集藻类图像,对所述藻类图像进行预处理,去噪和增强图像的对比度;对增强后的灰度图像上进行二值化处理,获得二值图像;
基于所述二值图像进行星杆藻类细胞检测,获取所述星杆藻类细胞的属性数据,根据所述属性数据验证是否符合星杆藻类细胞的特征;
统计满足星杆藻类细胞特征的检测数据,获得所述星杆藻类细胞的细胞个数。
2.根据权利要求1所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,对所述藻类图像进行预处理,去噪和增强图像的对比度的过程包括,
首先对所述藻类图像进行缩放处理,将缩放后的彩色图像转换为灰度图像;对所述灰度图像进行高斯滤波去噪,并采用对比度受限的自适应直方图均衡化算法对所述灰度图像进行对比度拉伸操作,增强图像的对比度;再通过高斯模糊化对所述藻类图像进行二次去噪处理。
3.根据权利要求1所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,对增强后的灰度图像上进行二值化处理,获得二值图像的过程包括,
采用自适应阈值分割方法对增强后的灰度图像进行二值化处理,获得初始二值图像,基于所述初始二值图像提取外轮廓数据;计算外轮廓的包围矩形,获得所述包围矩形的包围参数;将所述包围参数与预设包围参数阈值进行比较,在初始二值图像上将小于阈值的包围区域进行置零处理,获得所述二值图像。
4.根据权利要求1所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,基于所述二值图像进行星杆藻类细胞检测,获取所述星杆藻类细胞的属性数据的过程包括,
通过累计概率霍夫变换检测直线的方法对所述二值图像上进行直线检测;根据直线的一般式方程,计算直线的属性参数;根据所述属性参数对角度相似的直线进行分组;
根据分组结果,分别验证每组平行线段之间的最小间距是否小于设定的阈值;如果组内平行线段之间最小的间距大于设置的阈值,将该组平行线段分解成多组满足间距要求的平行线段;否则将组内所有线段的端点存放在一起,计算所述端点的最小包围矩形;
分析各个分组的最小包围矩形的特征,删除误检测的无效最小包围矩形。
5.根据权利要求4所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,
所述删除误检测的无效最小包围矩形包括删除长度小于设置阈值的最小包围矩形、删除平行最小包围矩形、验证最小包围矩形的图像占比;
所述删除长度小于设置阈值的最小包围矩形的过程包括,设置最小细胞长度比例参数,基于所述最小细胞长度比例参数与图像尺寸,获得细胞最小长度;将所述细胞最小长度与图像包围矩形长度进行比较,删除小于细胞最小长度的最小包围矩形;
所述删除平行最小包围矩形的过程包括,计算最小包围矩形之间的角度偏差值;设置角度偏差阈值,将计算得到的角度偏差值与所述角度偏差阈值进行比较,当所述角度偏差值的绝对值小于所述角度偏差阈值时,则进一步计算最小包围矩形之间的最小距离;如果最小包围矩形之间的最小距离小于设置的阈值,那么将删除平行最小包围矩形的两组数据。
6.根据权利要求1所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,
根据所述属性数据验证是否符合星杆藻类细胞的特征的验证过程包括,
计算最小包围矩形的中间线段,通过中间线段来表示星杆藻类细胞;计算中间线段之间的交点,验证中间线段的有效性;
当一个中间线段与其他中间线段的交点符合星杆藻类细胞分布规则时,对所述中间线段进行计数加1;统计所有的中间线段,找出计数最高的中间线段作为主线段;
分别计算主线段与其他中间线段的交点;分析计算各个线段的交点属性,将不满足规律的中间线段进行删除处理。
7.根据权利要求6所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,
计算最小包围矩形的中间线段的过程包括,计算最小包围矩形的顶点坐标、中间坐标点,基于所述中间坐标点组成线段,计算所述线段的属性数据获得最小包围矩形的中间线段。
8.根据权利要求6所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,
计算中间线段之间的交点,验证中间线段的有效性的过程包括获取线段交点类型、删除无效线段;
所述获取线段交点类型的过程包括验证主线段与其他线段的交点是否在图像内,在图像内计算主线段与其他线段端点之间的最小距离;基于所述最小距离判断交点是否在线段内,在线段内计算交点与线段最大长度的比值,根据所述比值得到不同的线段交点类型;
所述删除无效线段的过程包括删除计数为0的线段与交点属性不符合要求的线段,计算所有与主线段相交的交点均值,计算所有交点与所述交点均值之间的偏差,删除所述偏差大于预设偏差阈值的线段。
9.根据权利要求1所述的基于显微镜图像的星杆藻类细胞统计方法,其特征在于,
统计满足星杆藻类细胞特征的检测数据,获得所述星杆藻类细胞的细胞个数的过程包括,
重新计算各线段之间的交点,并获取交点均值坐标;
基于所述交点均值坐标,重新计算各线段的交点属性;
通过所述交点属性和所述交点均值坐标,计算每条线段对应的星杆藻细胞个数,统计获取图像中星杆藻类细胞总数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210639475.XA CN114782413B (zh) | 2022-06-07 | 2022-06-07 | 一种基于显微镜图像的星杆藻类细胞统计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210639475.XA CN114782413B (zh) | 2022-06-07 | 2022-06-07 | 一种基于显微镜图像的星杆藻类细胞统计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114782413A true CN114782413A (zh) | 2022-07-22 |
CN114782413B CN114782413B (zh) | 2023-02-10 |
Family
ID=82422033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210639475.XA Active CN114782413B (zh) | 2022-06-07 | 2022-06-07 | 一种基于显微镜图像的星杆藻类细胞统计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114782413B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116597441A (zh) * | 2023-05-22 | 2023-08-15 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 基于深度学习和图像模式识别的藻类细胞统计方法及系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794710A (zh) * | 2015-04-13 | 2015-07-22 | 上海泽煜实验设备有限公司 | 一种图像处理方法及装置 |
CN109509188A (zh) * | 2018-11-12 | 2019-03-22 | 贵州电网有限责任公司 | 一种基于hog特征的输电线路典型缺陷识别方法 |
CN110136065A (zh) * | 2019-05-15 | 2019-08-16 | 林伟阳 | 一种基于关键点检测的细胞计数方法 |
CN111724379A (zh) * | 2020-06-24 | 2020-09-29 | 武汉互创联合科技有限公司 | 基于组合视图的显微图像细胞计数与姿态识别方法及系统 |
US20210175124A1 (en) * | 2016-08-26 | 2021-06-10 | Intel Corporation | Integrated circuit device structures and double-sided electrical testing |
CN114418994A (zh) * | 2022-01-19 | 2022-04-29 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 一种基于显微镜图像的脆杆群体藻类细胞统计方法 |
CN114418995A (zh) * | 2022-01-19 | 2022-04-29 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 一种基于显微镜图像的级联藻类细胞统计方法 |
CN114495098A (zh) * | 2022-01-30 | 2022-05-13 | 南水北调中线干线工程建设管理局 | 一种基于显微镜图像的盘星藻类细胞统计方法及系统 |
CN114511851A (zh) * | 2022-01-30 | 2022-05-17 | 南水北调中线干线工程建设管理局 | 一种基于显微镜图像的游丝藻类细胞统计方法 |
CN114511530A (zh) * | 2022-01-27 | 2022-05-17 | 南水北调中线干线工程建设管理局河南分局 | 一种基于显微镜图像的鱼腥藻类细胞统计方法 |
-
2022
- 2022-06-07 CN CN202210639475.XA patent/CN114782413B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794710A (zh) * | 2015-04-13 | 2015-07-22 | 上海泽煜实验设备有限公司 | 一种图像处理方法及装置 |
US20210175124A1 (en) * | 2016-08-26 | 2021-06-10 | Intel Corporation | Integrated circuit device structures and double-sided electrical testing |
CN109509188A (zh) * | 2018-11-12 | 2019-03-22 | 贵州电网有限责任公司 | 一种基于hog特征的输电线路典型缺陷识别方法 |
CN110136065A (zh) * | 2019-05-15 | 2019-08-16 | 林伟阳 | 一种基于关键点检测的细胞计数方法 |
CN111724379A (zh) * | 2020-06-24 | 2020-09-29 | 武汉互创联合科技有限公司 | 基于组合视图的显微图像细胞计数与姿态识别方法及系统 |
CN114418994A (zh) * | 2022-01-19 | 2022-04-29 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 一种基于显微镜图像的脆杆群体藻类细胞统计方法 |
CN114418995A (zh) * | 2022-01-19 | 2022-04-29 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 一种基于显微镜图像的级联藻类细胞统计方法 |
CN114511530A (zh) * | 2022-01-27 | 2022-05-17 | 南水北调中线干线工程建设管理局河南分局 | 一种基于显微镜图像的鱼腥藻类细胞统计方法 |
CN114495098A (zh) * | 2022-01-30 | 2022-05-13 | 南水北调中线干线工程建设管理局 | 一种基于显微镜图像的盘星藻类细胞统计方法及系统 |
CN114511851A (zh) * | 2022-01-30 | 2022-05-17 | 南水北调中线干线工程建设管理局 | 一种基于显微镜图像的游丝藻类细胞统计方法 |
Non-Patent Citations (1)
Title |
---|
高尚: "基于数字全息成像的淡水藻类检测与分类技术研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116597441A (zh) * | 2023-05-22 | 2023-08-15 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 基于深度学习和图像模式识别的藻类细胞统计方法及系统 |
CN116597441B (zh) * | 2023-05-22 | 2024-01-26 | 生态环境部长江流域生态环境监督管理局生态环境监测与科学研究中心 | 基于深度学习和图像模式识别的藻类细胞统计方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114782413B (zh) | 2023-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104751142B (zh) | 一种基于笔划特征的自然场景文本检测方法 | |
CN109389121B (zh) | 一种基于深度学习的铭牌识别方法及系统 | |
CN107330979B (zh) | 建筑户型的矢量图生成方法、装置及终端 | |
CN109255344B (zh) | 一种基于机器视觉的数显式仪表定位与读数识别方法 | |
Samra et al. | Localization of license plate number using dynamic image processing techniques and genetic algorithms | |
CN107038416B (zh) | 一种基于二值图像改进型hog特征的行人检测方法 | |
CN111310662B (zh) | 一种基于集成深度网络的火焰检测识别方法及系统 | |
CN111611643A (zh) | 户型矢量化数据获得方法、装置、电子设备及存储介质 | |
CN110766016B (zh) | 一种基于概率神经网络的喷码字符识别方法 | |
CN102682428A (zh) | 一种基于方向场的指纹图像计算机自动化修补方法 | |
CN111680690A (zh) | 一种文字识别方法及装置 | |
CN112052782A (zh) | 基于环视的停车位识别方法、装置、设备及存储介质 | |
CN114782413B (zh) | 一种基于显微镜图像的星杆藻类细胞统计方法 | |
Kefali et al. | Evaluation of several binarization techniques for old Arabic documents images | |
CN112435272A (zh) | 一种基于图像轮廓分析的高压输电线连通域去除方法 | |
CN116052152A (zh) | 一种基于轮廓检测和深度神经网络的车牌识别系统 | |
CN114511530A (zh) | 一种基于显微镜图像的鱼腥藻类细胞统计方法 | |
CN112070116B (zh) | 一种基于支持向量机的艺术画作自动分类系统及方法 | |
CN117612179A (zh) | 图像中字符识别方法、装置、电子设备及存储介质 | |
CN112633070A (zh) | 高分辨率遥感影像建筑物提取方法及系统 | |
CN109829511B (zh) | 基于纹理分类的下视红外图像中云层区域检测方法 | |
CN112101283A (zh) | 一种交通标志智能识别方法及系统 | |
CN110930358A (zh) | 一种基于自适应算法的太阳能面板图像处理方法 | |
CN106611418A (zh) | 一种图像分割算法 | |
CN105844641A (zh) | 一种动态环境下的自适应阈值分割方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |