CN114066862A - 一种基于色域和轮廓特征的指示器识别方法及系统 - Google Patents
一种基于色域和轮廓特征的指示器识别方法及系统 Download PDFInfo
- Publication number
- CN114066862A CN114066862A CN202111387128.4A CN202111387128A CN114066862A CN 114066862 A CN114066862 A CN 114066862A CN 202111387128 A CN202111387128 A CN 202111387128A CN 114066862 A CN114066862 A CN 114066862A
- Authority
- CN
- China
- Prior art keywords
- image
- color
- contour
- area
- arc length
- 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.)
- Pending
Links
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
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- 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/10024—Color 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/20021—Dividing image into blocks, subimages or windows
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请提供了一种基于色域和轮廓特征的指示器识别方法及系统,该方法包括以下步骤:将原始RGB图像转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;在色域的上下限参数的范围内,对HSV颜色空间图像进行二值化分割,并且与原始RGB图像进行位运算获得目标图像;将目标图像转换为灰度空间图像,并对灰度空间图像进行Canny边缘检测,获得轮廓图像;以及设置弧长和面积作为阈值条件,对轮廓图像进行轮廓筛选,最终得出识别结果。通过该方法,只需简单通过颜色色域即可实现对于HSV颜色空间图像的整体分割,进而判断弧长和面积,输出识别结果,可以稳定且准确地对变电站状态指示器的分合状态进行识别。
Description
技术领域
本申请涉及工业视觉技术领域,具体涉及一种基于色域和轮廓特征的指示器识别方法及系统。
背景技术
近些年来,随着科技的发展和进步,国家电网在电力供应、绿色环保等方方面面都承担着日益重大的社会责任和社会使命。作为国家电网的重要组成部分,变电站的稳定运行作为电网系统安全运行提供了重要保障。
在变电站中,分合状态指示器是一种能够指示电力线路运行状态的指示器设备,其应用极为广泛。而正确识别分合状态指示器是判断变电站运行状态和排查电力系统故障的重要前提。变电站汉字式开关状态情况也非常简单,仅仅包含“分”和“合”两种。但由于人工排查不仅存在主观因素的影响,还需要承担高压风险。因此,通常利用变电站机器人巡检对推那个进行一系列的处理操作以替代人工检查,从而保障人身安全和提高工作效率。
在实际场景中,机器人在室外巡检容易受光照、天气等外界环境的干扰,鉴于此,设计一种在不同外界环境中,稳定而准确地检测变电站的指示器分合状态具有十分重要的意义。
发明内容
本申请实施例提出了一种基于色域和轮廓特征的指示器识别方法及系统,来解决以上背景技术部分提到的技术问题。
第一方面,本申请实施例提供了一种基于色域和轮廓特征的指示器识别方法,包括以下步骤:
S110、将原始RGB图像转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;
S120、在色域的上下限参数的范围内,对HSV颜色空间图像进行二值化分割,并且与原始RGB图像进行位运算获得目标图像;
S130、将目标图像转换为灰度空间图像,并对灰度空间图像进行Canny边缘检测,获得轮廓图像;以及
S140、设置弧长和面积作为阈值条件,对轮廓图像进行轮廓筛选,最终得出识别结果。
通过该方法,只需简单通过颜色色域即可实现对于HSV颜色空间图像的整体分割,进而判断弧长和面积,输出识别结果,可以稳定且准确地对变电站状态指示器的分合状态进行识别。
在一些实施例中,在步骤S140中,具体包括以下步骤:
S141、通过轮廓提取函数获得轮廓集合,遍历轮廓集合并且分别计算所有轮廓的弧长和面积,存入对应的弧长列表和面积列表中;
S142、获取弧长列表和积列表中最大的元素,分别记为最大弧长和最大面积;
S143、从最大弧长中获取第一颜色弧长和第二颜色弧长,从最大面积中获取第一颜色面积和第二颜色面积;
S144、输出识别结果,响应于确定第一颜色面积大于第二颜色面积,并且第一颜色弧长大于第二颜色弧长,则输出识别结果为“分”,否则为“合”;以及
S145、返回步骤S144进行下一轮判断并输出识别结果。
由于拍摄的原始RGB图像除了包含状态指示器的主体外,还可能包含有背景环境,因此分别将第一颜色弧长、第二颜色弧长的长度以及第一颜色面积和第二颜色面积的大小进行对比,综合分析后得出最终准确的结果。
在一些实施例中,在步骤S141中,轮廓的面积是通过格林公式计算获得;在步骤S142中,通过操作函数获取弧长列表和面积列表中的最大元素,通过求参数集合函数返回一个操作函数获取的数组中最大值的索引值,若同一数组中同时出现多个最大值时,则返回第一个最大值的索引值。
通过该操作,可以快速方便地获取到最大的绿色弧长、红色弧长以及最大的绿色面积和红色面积。
在一些实施例中,在步骤S120中,具体包括以下步骤:
S121、分别设置第一颜色和第二颜色在HSV颜色空间图像的上下限;
S122、通过inRange阈值操作函数计算上下限,以及将HSV颜色空间图像转化为对应的二值化图像,分别记为第一颜色掩模和第二颜色掩模;以及
S123、将原始RGB图像与第一颜色掩模和所述第二颜色掩模进行位运算,获得原始RGB图像减去第一颜色掩模和第二颜色掩模的图像并将获得的图像记为目标图像。
将掩模视为一个模板,在原始RGB图像上可以通过该模板的位运算得到原始RGB图像中相应的位置的感兴趣部分。
在一些实施例中,在步骤S121中,第一颜色为绿色,第二颜色为红色。
在一些实施例中,在步骤S130中,具体包括以下步骤:
S131、将目标图像的转换为灰度空间图像;
S132、使用高斯滤波器平滑灰度空间图像;
S133、计算灰度空间图像中每个像素点的梯度强度和方向,应用非极大值抑制消除边缘检测带来的杂散响应,应用双阈值检测确定真实的和潜在的边缘;以及
S134、通过抑制孤立的弱边缘完成边缘检测获得轮廓图像,最终获得轮廓集合和层级关系。
将目标图像转换为灰度空间图像以便后续对图像进行下一步操作。为尽可能减少噪声对边缘检测结果的影响,所以必须滤除噪声以防止由噪声引起的错误检测,使用高斯滤波器与图像进行卷积。非极大值抑制可以帮助将局部最大值之外的所有梯度值抑制为0。为了解决杂散响应,必须用弱梯度值过滤边缘像素,并保留具有高梯度值的边缘像素,通过选择高低阈值来实现。抑制由噪声或颜色变化引起的弱边缘,以确保为获得准确的结果。
在一些实施例中,在步骤S131中,使用公式Gray=0.299×R+0.587×G+0.114×B将目标图像的转换为述灰度空间图像,其中,Gray表示一个彩色像素点对应的灰度色阶,R、G、B分别表示彩色像素点的红、绿和蓝三分量的值。
在一些实施例中,在步骤S110中,将原始RGB图像转换为HSV颜色空间图像运用了以下算法:
Max=max(R,G,B)
Min=min(R,G,B)
其中,f(x)表示为原始RGB图像转换为HSV颜色空间图像的函数,R、G、B分别表示彩色像素点的红、绿和蓝三分量的值,Max表示最大值,Min表示最小值。
通过该算法可以简单方便地将原始RGB图像转换为HSV颜色空间图像。
第二方面,本申请提供了一种基于色域和轮廓特征的指示器识别系统,该系统包括:
转换模块,用于将原始RGB图像转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;以及
分割模块,用于在色域的上下限参数的范围内,对HSV颜色空间图像进行二值化分割,并且与原始RGB图像进行位运算获得目标图像;
检测模块,用于将目标图像转换为灰度空间图像,并对灰度空间图像进行Canny边缘检测,获得轮廓图像;以及
输出模块,用于以弧长和面积作为阈值条件,对轮廓图像进行筛选,最终得出识别结果。
第三方面,本申请提供了一种计算机可读存储介质,该介质中存储有计算机程序,在计算机程序被处理器执行时,实施如上述中任一项的方法。
本申请实施例提供的一种基于色域和轮廓特征的指示器识别方法及系统可通过轮廓面积和弧长的条件过滤掉无关的噪声和小轮廓区域,最终得到分合状态指示器的相关信息,并将两种颜色(红色、绿色)在计算结果中进行判断,最终能够在不同外界环境下,稳定而准确地检测出变电站状态指示器的分合状态。
附图说明
通过阅读参照以下附图你,所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是根据本申请的基于色域和轮廓特征的指示器识别方法的的流程图;
图2是根据本申请的基于色域和轮廓特征的指示器识别方法的一个具体实施例的示意图;
图3是根据本申请的一个实施例的原始RGB图像的示意图;
图4是根据本申请的一个实施例的二值化图像的示意图;
图5是根据本申请的一个实施例的目标图像的示意图;
图6是根据本申请的一个实施例的灰度空间图像的示意图;
图7是根据本申请的一个实施例的轮廓图像的示意图;
图8是根据本申请的基于色域和轮廓特征的指示器识别方法系统的的示意图;
图9是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了本申请的基于色域和轮廓特征的指示器识别方法的的流程图,图2示出了本申请的基于色域和轮廓特征的指示器识别方法的一个具体实施例的示意图,结合参考图1和图2,该方法100包括以下步骤:
S110、将原始RGB图像(如图3所示)转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;
在本实施例中,HSV颜色空间图像为使用色相(Hue)、饱和度(Saturation)、明度(Value)来表示色彩的一种方式。
其中,色相:将颜色用0°到360°表示,即日常讲的颜色名称,如红色、蓝色等;饱和度:色彩的纯度,饱和度越低色彩越暗淡(0<=S<1);明度:即颜色的明亮程度,数值越高越接近于白色,数值越低越接近于黑色(0<=V<1)。
具体的,将图像从RGB色彩空间转换到HSV色彩空间的算法如下所示:
Max=max(R,G,B)
Min=min(R,G,B
其中,R、G、B分别表示彩色像素点的红、绿和蓝三分量的值,Max表示最大值,Min表示最小值。
关于上述转换公式的计算,有下面计算例表:
RGB | HSV | 结果 |
(1,0,0) | (0°,1,1) | 红色 |
(0.5,0.5,0.5) | (120°,0.5,1) | 绿色 |
(0,0,0.5) | (240°,1,0.5) | 蓝色 |
S120、在色域的上下限参数的范围内,对HSV颜色空间图像进行二值化分割,并且与原始RGB图像进行位运算获得目标图像;
由于在实际应用中,变电站状态指示器的“分”与“合”是一组对立的关系,一幅原始RGB图像包括绿色的“分”,或者红色的“合”。
因此,在本实施例中,分别设置第一颜色和第二颜色在HSV颜色空间图像的上下限,其中,第一颜色为绿色,第二颜色为红色。分别记为红色下限(redlower)、红色上限(redupper)和绿色下限(greenlower)、绿色上限(greenupper)。
红色、绿色的上下限取值范围如下所示:
redlower=np.array([0,100,0])
redupper=np.array([10,255,234])
greenlower=np.array([50,30,0])
greenupper=np.array([185,65,45])
在该色域的上下限参数的范围内,对HSV颜色空间图像进行二值化分割,具体的是通过计算阈值操作函数(inRange)的上下限将HSV颜色空间图像转化为对应的二值化图像(如图4所示),分别记为红色掩模(redmask)和绿色掩模(greenmask)。将原始RGB图像与红色掩模(redmask)、绿色掩模(greenmask)进行位运算,获得原始RGB图像减去红色掩模、绿色掩模的图像并将获得的图像记为目标图像(dst)。
其中,cv2.inRange()是OpenCV计算机视觉开源库中的阈值操作函数,该inRange函数的作用是提取想要的颜色,并把该颜色的区域设置为白色,其余的设置为黑色。
其原理为:在RGB三通道图像中,该inRange函数需要输入一个低值数组和高值数组,然后该inRange函数扫描图片的每个像素,每个像素的值即为这个数组的每个值,如果相对应的,都在两个输入的低值数组和高值数组范围内,则该数值会被设置为白色。否则只要有一个不在这个范围内,就会设置为黑色。
比如:低值数组:np.array([1,2,3]);高值数组:np.array([4,5,6])
如果一个像素所在区域想被设置成白色的话,那么像素值的第一个元素就得在1和4之间,第二个在2和5之间,第三个在3和6之间。
在本实施例中,将上述由inRange函数转换得到的二值化图像作为掩模(mask),并通过图像位运算(cv2.bitwise_and())得到对应的目标图像(如图5所示)。此处,可将掩模(mask)视为一个模板,在原始RGB图像上可通过该模板的位运算得到原始RGB图像中相应位置的感兴趣部分。
其中,图像位运算(cv2.bitwise_and())是对二进制数据进行“与”操作,即对图像(灰度图像或彩色图像均可)每个像素值进行二进制“与”操作,1&1=1,1&0=0,0&1=0,0&0=0。利用掩膜(mask)进行“与”操作,即掩膜图像白色区域是对需要处理图像像素的保留,黑色区域是对需要处理图像像素的剔除,其余按位操作原理类似只是效果不同而已。
S130、将目标图像转换为灰度空间图像,并对灰度空间图像进行Canny边缘检测,获得轮廓图像;
在本实施例中,对获得的目标图像(dst)进行预处理。首先需要对目标图像进行图像灰度化处理以获得灰度空间图像(如图6所示),彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255中值可取,一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理中一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。
RGB值和灰度的转换,实际上是人眼对于彩色的感觉到亮度感觉的转换,通过以下公式进行转换:
Gray=0.299×R+0.587×G+0.114×B
其中,Gray表示一个彩色像素点对应的灰度色阶,R、G、B分别表示彩色像素点的红、绿和蓝三分量的值。
对该灰度空间图像进行Canny边缘检测,并将得到图像记为边缘检测图(imgcanny),具体的,首先使用高斯滤波器平滑该灰度空间图像;计算灰度空间图像中每个像素点的梯度强度和方向,应用非极大值(Non-Maximum Suppression)抑制消除边缘检测带来的杂散响应,应用双阈值(Double-Threshold)检测确定真实的和潜在的边缘;通过抑制孤立的弱边缘完成边缘检测获得轮廓图像,最终获得轮廓集合和层级关系。
具体的,在OpenCV中有对于Canny边缘检测算法的实现,使用方式为canny=cv2.Canny(gray,0,128)。
Canny边缘检测算子是一种多级检测算法,1986年由John F.Canny提出,同时提出了边缘检测的三大准则:1.低错误率的边缘检测:检测算法应该精确地找到图像中的尽可能多的边缘,尽可能的减少漏检和误检。2.最优定位:检测的边缘点应该精确地定位于边缘的中心。3.图像中的任意边缘应该只被标记一次,同时图像噪声不应产生伪边缘。为了满足这些要求,Canny使用了变分法。Canny检测器中的最优函数使用四个指数项的和来描述,它可以由高斯函数的一阶导数来近似。在目前常用的边缘检测方法中,Canny边缘检测算法是具有严格定义的,可以提供良好可靠检测的方法之一。
将目标图像转换为灰度空间图像以便后续对图像进行下一步操作;为尽可能减少噪声对边缘检测结果的影响,所以必须滤除噪声以防止由噪声引起的错误检测,使用高斯滤波器与图像进行卷积。非极大值抑制可以帮助将局部最大值之外的所有梯度值抑制为0。为了解决杂散响应,必须用弱梯度值过滤边缘像素,并保留具有高梯度值的边缘像素,通过选择高低阈值来实现。抑制由噪声或颜色变化引起的弱边缘,以确保为获得准确的结果。
S140、设置弧长和面积作为阈值条件,对轮廓图像进行轮廓筛选,最终得出识别结果。
在本实施例中,通过轮廓提取函数(findcontours)对边缘检测图(imgcanny)进行轮廓查找,获得轮廓集合(coutours)和层级关系(hierachy)。其中,该层级关系是指在轮廓提取时,根据层级关系与索引生成的。遍历轮廓集合(coutours)并且分别计算所有轮廓的弧长(arclength)和面积(area),存入对应的弧长列表(arclist)和面积列表(arealist)中。
得到图像的每个轮廓,从而可以计算轮廓的弧长与面积,根据轮廓的面积与弧长可以实现对不同大小对象的过滤,寻找到感兴趣的roi区域和参数。OpenCV对轮廓点集计算面积的API函数如下:
double cv::contourArea(
InputArray contour,
bool oriented=false
)
计算轮廓的面积,其原理是基于格林公式,参数contour表示输入的轮廓点集,参数oriented默认是false返回的面积是正数,如果方向参数为true表示会根据是顺时针或者逆时针方向返回正值或者负值面积计算轮廓曲线的弧长。
double cv::arcLength(
InputArray curve,
bool closed)
其中,参数curve表示输入的轮廓点集,参数closed默认表示是否闭合区域。
分别对面积列表(arealist)和弧长列表(arclist)列表中求最大元素,记为最大面积(maxarea)和最大弧长(maxarclength)并返回;同时得到红色和绿色所对应的最大面积和最大弧长,即红色面积(redarea)、红色弧长(redarclength)和绿色面积(greenarea)、绿色弧长(greenarclength)。在识别变电站状态指示器的应用中,红色面积(redarea)和绿色面积(greenarea)的取值为20,红色弧长(redarclength)和绿色弧长(greenarclength)的取值为100。
此处,主要是在遍历所有轮廓集合中,将计算得到的子轮廓面积与弧长存入相应的列表,这里的列表为Python语言的一种元素容器list,可存入任意类型的元素。同时,对于获得列表中最大元素的方式使用的是numpy的操作函数,求参数集合函数argmax(array,axis)用于返回一个numpy数组中最大值的索引值。当一组中同时出现几个最大值时,返回第一个最大值的索引值。在运算时,相当于剥掉一层中括号,返回一个数组,分为一维和多维。一维数组剥掉一层中括号之后就成了一个索引值,是一个数,而n维数组剥掉一层中括号后,会返回一个n-1维数组,而剥掉哪一层中括号,取决于axis的取值。
在本实施例中,输出识别结果,响应于确定绿色面积大于红色面积,并且绿色弧长大于红色弧长,则输出识别结果为“分”,否则为“合”;返回识别结果进行下一轮判断并进行输出。
通过该方法,只需简单通过颜色色域即可实现对于HSV颜色空间图像的整体分割,进而判断弧长和面积,输出识别结果,可以稳定且准确地对变电站状态指示器的分合状态进行识别。由于拍摄的原始RGB图像除了包含状态指示器的主体外,还可能包含有背景环境,因此分别将绿色弧长、红色弧长的长度以及绿色面积和红色面积的大小进行对比,综合分析后得出最终准确的结果。
进一步参考图8,作为对上述所述方法的实现,本申请提供了基于色域和轮廓特征的指示器识别系统的一个实施例,该系统实施例与图1所示的方法实施例相对应,该系统具体可以应用于各种电子设备中。该系统200包括:
转换模块210,用于将原始RGB图像转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;
分割模块220,用于在色域的上下限参数的范围内,对HSV颜色空间图像进行二值化分割,并且与原始RGB图像进行位运算获得目标图像;
检测模块230,用于将目标图像转换为灰度空间图像,并对灰度空间图像进行Canny边缘检测,获得轮廓图像;
输出模块240,用于以弧长和面积作为阈值条件,对轮廓图像进行筛选,最终得出识别结果。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被处理器执行时实施如上述中任一项方法。
如图9所示,计算机系统300包括中央处理单元(CPU)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储部分308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有系统300操作所需的各种程序和数据。CPU 301、ROM 302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括液晶显示器(LCD)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。在该计算机程序被中央处理单元(CPU)301执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、分析模块和输出模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种基于色域和轮廓特征的指示器识别方法,其特征在于,包括以下步骤:
S110、将原始RGB图像转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;
S120、在所述色域的上下限参数的范围内,对所述HSV颜色空间图像进行二值化分割,并且与所述原始RGB图像进行位运算获得目标图像;
S130、将所述目标图像转换为灰度空间图像,并对所述灰度空间图像进行Canny边缘检测,获得轮廓图像;以及
S140、设置弧长和面积作为阈值条件,对所述轮廓图像进行轮廓筛选,最终得出识别结果。
2.根据权利要求1所述的基于色域和轮廓特征的指示器识别方法,其特征在于,在步骤S140中,具体包括以下步骤:
S141、通过轮廓提取函数获得轮廓集合,遍历所述轮廓集合并且分别计算所有轮廓的弧长和面积,存入对应的弧长列表和面积列表中;
S142、获取所述弧长列表和所述面积列表中最大的元素,分别记为最大弧长和最大面积;
S143、从所述最大弧长中获取第一颜色弧长和第二颜色弧长,从所述最大面积中获取第一颜色面积和第二颜色面积;
S144、输出识别结果,响应于确定所述第一颜色面积大于所述第二颜色面积,并且所述第一颜色弧长大于所述第二颜色弧长,则输出所述识别结果为“分”,否则为“合”;以及
S145、返回步骤S144进行下一轮判断并输出识别结果。
3.根据权利要求2所述的基于色域和轮廓特征的指示器识别方法,其特征在于,在步骤S141中,所述轮廓的面积是通过格林公式计算获得;在步骤S142中,通过操作函数获取所述弧长列表和所述面积列表中的最大元素,通过求参数集合函数返回一个所述操作函数获取的数组中最大值的索引值,若同一数组中同时出现多个最大值时,则返回第一个最大值的索引值。
4.根据权利要求1所述的基于色域和轮廓特征的指示器识别方法,其特征在于,在步骤S120中,具体包括以下步骤:
S121、分别设置第一颜色和第二颜色在所述HSV颜色空间图像的上下限;
S122、通过inRange阈值操作函数计算所述上下限,以及将所述HSV颜色空间图像转化为对应的二值化图像,分别记为第一颜色掩模和第二颜色掩模;以及
S123、将所述原始RGB图像与所述第一颜色掩模和所述第二颜色掩模进行位运算,获得所述原始RGB图像减去所述第一颜色掩模和所述第二颜色掩模的图像并将获得的图像记为目标图像。
5.根据权利要求4所述的基于色域和轮廓特征的指示器识别方法,其特征在于,在步骤S121中,所述第一颜色为绿色,所述第二颜色为红色。
6.根据权利要求1所述的基于色域和轮廓特征的指示器识别方法,其特征在于,在步骤S130中,具体包括以下步骤:
S131、将所述目标图像的转换为所述灰度空间图像;
S132、使用高斯滤波器平滑所述灰度空间图像;
S133、计算所述灰度空间图像中每个像素点的梯度强度和方向,应用非极大值抑制消除边缘检测带来的杂散响应,应用双阈值检测确定真实的和潜在的边缘;以及
S134、通过抑制孤立的弱边缘完成边缘检测获得轮廓图像,最终获得轮廓集合和层级关系。
7.根据权利要求6所述的基于色域和轮廓特征的指示器识别方法,其特征在于,在步骤S131中,使用公式Gray=0.299×R+0.587×G+0.114×B将所述目标图像的转换为所述灰度空间图像,其中,Gray表示一个彩色像素点对应的灰度色阶,R、G、B分别表示彩色像素点的红、绿和蓝三分量的值。
9.一种基于色域和轮廓特征的指示器识别系统,其特征在于,所述系统包括:
转换模块,用于将原始RGB图像转换为HSV颜色空间图像,并设定色域的上下限参数作为分割条件;以及
分割模块,用于在所述色域的上下限参数的范围内,对所述HSV颜色空间图像进行二值化分割,并且与所述原始RGB图像进行位运算获得目标图像;以及
检测模块,用于将所述目标图像转换为灰度空间图像,并对所述灰度空间图像进行Canny边缘检测,获得轮廓图像;以及
输出模块,用于以弧长和面积作为阈值条件,对所述轮廓图像进行筛选,最终得出识别结果。
10.一种计算机可读存储介质,所述介质中存储有计算机程序,在所述计算机程序被处理器执行时,实施如权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387128.4A CN114066862A (zh) | 2021-11-22 | 2021-11-22 | 一种基于色域和轮廓特征的指示器识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387128.4A CN114066862A (zh) | 2021-11-22 | 2021-11-22 | 一种基于色域和轮廓特征的指示器识别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114066862A true CN114066862A (zh) | 2022-02-18 |
Family
ID=80278987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111387128.4A Pending CN114066862A (zh) | 2021-11-22 | 2021-11-22 | 一种基于色域和轮廓特征的指示器识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114066862A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002433A (zh) * | 2022-06-02 | 2022-09-02 | 海信视像科技股份有限公司 | 投影设备及roi特征区域选取方法 |
CN116863333A (zh) * | 2023-06-28 | 2023-10-10 | 深圳市名通科技股份有限公司 | Fsu设备工作状态的ai智能检测方法 |
-
2021
- 2021-11-22 CN CN202111387128.4A patent/CN114066862A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002433A (zh) * | 2022-06-02 | 2022-09-02 | 海信视像科技股份有限公司 | 投影设备及roi特征区域选取方法 |
CN116863333A (zh) * | 2023-06-28 | 2023-10-10 | 深圳市名通科技股份有限公司 | Fsu设备工作状态的ai智能检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chung et al. | Efficient shadow detection of color aerial images based on successive thresholding scheme | |
CN108764358B (zh) | 一种太赫兹图像识别方法、装置、设备及可读存储介质 | |
CN111915704A (zh) | 一种基于深度学习的苹果分级识别方法 | |
US9679354B2 (en) | Duplicate check image resolution | |
EP3176751A1 (en) | Information processing device, information processing method, computer-readable recording medium, and inspection system | |
CN115619793B (zh) | 基于计算机视觉的电源适配器外观质量检测方法 | |
CN114066862A (zh) | 一种基于色域和轮廓特征的指示器识别方法及系统 | |
CN108389215B (zh) | 一种边缘检测方法、装置、计算机存储介质及终端 | |
CN115205223B (zh) | 透明物体的视觉检测方法、装置、计算机设备及介质 | |
CN111325164B (zh) | 指针表示数识别方法、装置和电子设备 | |
CN113688838B (zh) | 红色笔迹提取方法、系统、可读存储介质及计算机设备 | |
CN116703909B (zh) | 一种电源适配器生产质量智能检测方法 | |
CN116758045B (zh) | 一种半导体发光二极管的表面缺陷检测方法及系统 | |
US9824289B2 (en) | Exploiting color for license plate recognition | |
CN108154496B (zh) | 一种适用于电力作业机器人的电力设备外观变化识别方法 | |
CN115830585A (zh) | 一种基于图像增强的港口集装箱号识别方法 | |
CN108877030B (zh) | 图像处理方法、装置、终端和计算机可读存储介质 | |
CN113283439B (zh) | 基于图像识别的智能计数方法、装置及系统 | |
CN113408519A (zh) | 一种基于模板旋转匹配的指针仪表读数的方法及系统 | |
CN110310341B (zh) | 颜色算法中默认参数的生成方法、装置、设备和存储介质 | |
CN114821194B (zh) | 一种设备运行状态识别方法及装置 | |
CN115187563A (zh) | 一种用于电力仪表检验的骑缝章检测识别方法及系统 | |
Guo et al. | Fault diagnosis of power equipment based on infrared image analysis | |
CN115423765A (zh) | 一种基于模板图像的晶粒缺陷量化分割方法 | |
CN111612836B (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 |