基于图像的手掌红色斑点检测方法与流程

文档序号:17070553发布日期:2019-03-08 23:16阅读:576来源:国知局
基于图像的手掌红色斑点检测方法与流程

本发明涉及图像检测技术领域,尤其涉及一种基于图像的手掌红色斑点检测方法。



背景技术:

随着计算机视觉技术的不断发展,图像处理技术被人们用于各种领域中。计算机诊病就是其中重要的应用案例之一,由于具有自动、快捷等特点,能大幅提高诊病效率,被视为未来医学诊病的发展方向。考虑到皮肤病诊断主要通过观察皮肤表面症状,可以通过计算机视觉技术实现皮肤病的自动诊断过程。如何将皮肤图像中的病变区域辨识出来是实现计算机皮肤病诊断的重要过程,有助于分析疹点数量、分布、形态大小等。本发明利用计算机视觉库opencv(opensourcecomputervisionlibrary)提供的斑点检测方法类simpleblobdetector,并通过对其进行改进,使检测更精确,方法步骤更简单,运算速度更快。



技术实现要素:

本发明的目的是提供一种基于图像的手掌红色斑点检测方法。

一种基于图像的手掌红色斑点检测方法,包括如下步骤:获取手掌轮廓区域的外接四边形点集坐标,在原图的cr分量图中获取手掌区域感兴趣图像;

对获取的所述手掌区域感兴趣图像计算灰度最大值和最小值;

对获取的所述手掌区域感兴趣图像进行分段自适应线性拉伸以获取手掌图像;

设置红色斑点检测参数;

对进行分段自适应线性拉伸处理的图像计算灰度最大值和最小值;

判断灰度最大值是否大于经验值从而设定不同的二值化起始阈值;

调用opencv的blob检测函数检测获得红色斑点数量结果。

在本发明提供的基于图像的手掌红色斑点检测方法的一种较佳实施例中,所述经验值为177像素,判断灰度最大值是否大于经验值177像素,若是,则设置红色斑点检测参数之一的二值化起始阈值为176;若否,则设置红色斑点检测参数之一的二值化起始阈值为173;

在本发明提供的基于图像的手掌红色斑点检测方法的一种较佳实施例中,所述分段自适应线性拉伸的处理方法为:

设置分段拉伸区间;

计算各所述拉伸区间内的拉伸斜率;

根据所述拉伸区间和其对应的拉伸斜率进行相应的线性拉伸处理。

在本发明提供的基于图像的手掌红色斑点检测方法的一种较佳实施例中,所述分段自适应线性拉伸的拉伸区间为:【0,x1】,【x1,x2】,【x2,255】,其中x1=132,x2=184。

在本发明提供的基于图像的手掌红色斑点检测方法的一种较佳实施例中,拉伸斜率计算:【0,x1】区间段内k0=1,该区间段为恒定区间,像素不做拉伸;【x1,x2】区间段内k1=0.75,该区间为肤色区间,像素值向下压缩;【x2,255】区间段内k2根据统计试验得出该区间的像素值拉伸斜率是自适应变化的,k2的值随灰度最大值(maxv)变化而变化,其变化公式为:

与现有技术相比,本发明提供的基于图像的手掌红色斑点检测方法在调用opencv的blob检测函数前先对图像像素进行了线性拉伸,且拉伸变换函数为动态连续的,从而使斑点检测精确、范围扩大,可应用于皮疹、荨麻疹、湿疹、水痘、痤疮等呈斑点状分布的皮肤病的病程检测,无论病程轻重皆可快速检测识别,有效避免传播蔓延,给医学诊断提供了良好的依据,方法步骤更简单,计算机运算速度更快。红色斑点检测参数之一的二值化起始阈值为根据实际使用经验所得,实际应用效果佳,具有实际应用推广意义。

附图说明

图1为本发明提供的基于图像的手掌红色斑点检测方法流程图。

具体实施方式

为使得本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

请参阅图1,提供的基于图像的手掌红色斑点检测方法流程图。所述基于图像的手掌红色斑点检测方法,包括如下步骤:

步骤一:获取手掌区域轮廓的外接四边形点集坐标,在原图的cr分量图中获取手掌区域感兴趣图像。可减少后续红色斑点检测图像尺寸,只对感兴趣的手掌区域图像进行检测,从而大大减小了计算机运算负荷,提高了运算速度。

步骤二:对获取的所述手掌区域感兴趣图像计算灰度最大值maxv和最小值minv,根据灰度最大值maxv为后续分段自适应线性拉伸提供主要数据。

步骤三:对获取的所述手掌区域感兴趣图像进行分段自适应线性拉伸以获取手掌图像。所述分段自适应线性拉伸处理方法为:设置分段拉伸区间;所述分段自适应线性拉伸的拉伸区间为:【0,x1】,【x1,x2】,【x2,255】,其中x1=132,x2=184。

计算所述拉伸区间段内拉伸斜率;根据所述拉伸区间段和拉伸斜率进行相应的线性拉伸处理。

拉伸斜率计算:【0,x1】区间段内k0=1,该区间段为恒定区间,像素不做拉伸;【x1,x2】区间段内k1=0.75,该区间为肤色区间,像素值向下压缩;【x2,255】区间段内k2根据统计试验得出该区间的像素值拉伸斜率是自适应变化的,k2的值随灰度最大值(maxv)变化而变化,其变化公式为:

步骤四:设置红色斑点检测参数。红色斑点检测参数simpleblobdetector::params::params()有19种参数,本文使用到的参数为:thresholdstep—二值化的阈值步长;minthreshold--二值化起始阈值;maxthreshold--二值化终止阈值;minarea—斑点最小面积;maxarea--斑点最大面积等。

步骤五:对进行分段自适应线性拉伸处理的图像计算灰度最大值maxv’和最小值minv’。判断灰度最大值maxv’是否大于经验值从而设定不同的二值化起始阈值;所述经验值为177像素。判断灰度最大值maxv’是否大于经验值177像素,若是,则设置红色斑点检测参数之一的二值化起始阈值为176;若否,则设置红色斑点检测参数之一的二值化起始阈值为173。

步骤六:调用opencv的blob检测函数检测获得红色斑点数量结果。所述检测函数为blob检测函数simpleblobdetector::detector(params)检测参数初始化和detector.detect(img_crrio,keypoint)--斑点检测函数。

与现有技术相比,本发明提供的基于图像的手掌红色斑点检测方法在调用opencv的blob检测函数前先对图像进行了线性拉伸,且拉伸变换函数为动态连续的,从而使斑点检测精确、范围扩大,因而可应用于皮疹、荨麻疹、湿疹、水痘、痤疮等呈斑点状分布的皮肤病的病程快速检测识别,有效避免传播蔓延,给医学诊断提供了良好的依据,方法步骤简单,运算速度更快。红色斑点检测参数之一的二值化起始阈值为根据实际使用经验所得,实际应用效果佳,具有实际应用推广意义。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1