当前位置: 首页 > 专利查询>南宁学院专利>正文

一种屏幕颜色识别系统的识别方法技术方案

技术编号:27007060 阅读:25 留言:0更新日期:2021-01-08 17:11
本发明专利技术提供的一种屏幕颜色识别系统了识别方法,通过1)系统启动;2)对电子产品屏幕进行实时取帧;3)对屏幕主体物体的颜色进行识别并将颜色进行文字标注的步骤对屏幕图片的颜色进行标注,可以给色盲用户提供电子产品屏幕上显示的物体的颜色辨别,以文字形式标记出屏幕主体或者用户感兴趣的屏幕区域的颜色,帮助色盲用户有效地辨别电子产品上显示的颜色,让色盲用户更好地生活学习,避免了因为颜色无法确认导致的各种不便和问题。

【技术实现步骤摘要】
一种屏幕颜色识别系统的识别方法
本专利技术涉及一种屏幕颜色识别系统的识别方法。
技术介绍
在日常生活中,色盲人群虽然只会占据总人数的很小一部分,但是该部分人群在日常使用电脑、电视、手机甚至一些普遍的电子类产品的时候,往往无法分辨所浏览的主体的正确颜色,这往往会导致不便利的情况发生,比如,需要红绿色盲用户点击红色按钮时,用户往往无法直接辨认哪个按钮为红色。
技术实现思路
为解决上述技术问题,本专利技术提供了一种屏幕颜色识别系统的识别方法。本专利技术通过以下技术方案得以实现。本专利技术提供的一种屏幕颜色识别系统的识别方法,其步骤为:1)系统启动;2)对电子产品屏幕进行实时取帧;3)对屏幕主体物体的颜色进行识别并将颜色进行文字标注。所述步骤2)中取帧采用OpenCV软件库,并对屏幕帧进行边缘提取,并对提取后的边缘进行锐化、光滑处理。。所述步骤3)中颜色的识别步骤为:3.1)通过OpenCV软件库物体特征库进行搜索比对识别出主体的轮廓;若软件库中无法识别出物体,则将屏幕帧中封闭边缘图像作为主体物;3.2)获取主体物的每个像素RGB值,对RGB值相似的区域作为颜色一致或者相似处理;3.3)在识别出颜色的区域使用文字标记出该颜色。所述RGB值和颜色的对应关系为ASCII对照表。所述OpenCV的主体轮廓提取识别步骤为:3.1.1)在OpenCV库中调用findContours()函数查找轮廓;3.1.2)调用drawContours()画轮廓并进行轮廓填充;3.1.3)计算轮廓的面积和周长;3.1.4)提取轮廓凸包,矩形,最小外接矩形,外接圆;3.1.5)将获取到的轮廓与数据库中的图片进行对比,若对比的两者相似度达到设置的阈值则认为主体提取成功。图片相似度值对比方法为:3.1.5.1)使用python函数Image.open(path)分别读取对比库中的图像和需要对比的图像。3.1.5.2)计算两幅图片的均方差MSE:defmse(imageA,imageB):err=np.sum((imageA.astype("float")-imageB.astype("float"))**2)err/=float(imageA.shape[0]*imageA.shape[1])returnerr使用compare_ssim函数计算两幅图片的SSIM值:fromskimage.measureimportcompare_ssimasssim3.1.5.3)计算出的MSE值越小,则两图像越相似,或SSIM在[-1,1]之间,则代表两图像相似。所述阀值为MSE<1或1>SSIM>-1。本专利技术的有益效果在于:可以给色盲用户提供电子产品屏幕上显示的物体的颜色辨别,以文字形式标记出屏幕主体或者用户感兴趣的屏幕区域的颜色,帮助色盲用户有效地辨别电子产品上显示的颜色,让色盲用户更好地生活学习,避免了因为颜色无法确认导致的各种不便和问题。附图说明图1是本专利技术的系统识别流程图;图2是本专利技术的电子屏幕显示图;图3是本专利技术的提取的图2的轮廓图;图4是本专利技术的提取的主体图片。具体实施方式下面进一步描述本专利技术的技术方案,但要求保护的范围并不局限于所述。一种屏幕颜色识别系统的识别方法,其步骤为:1)系统启动;2)对电子产品屏幕进行实时取帧;3)对屏幕主体物体的颜色进行识别并将颜色进行文字标注。所述步骤2)中取帧采用OpenCV软件库,并对屏幕帧进行边缘提取,并对提取后的边缘进行锐化、光滑处理。。所述步骤3)中颜色的识别步骤为:3.1)通过OpenCV软件库物体特征库进行搜索比对识别出主体的轮廓;若软件库中无法识别出物体,则将屏幕帧中封闭边缘图像作为主体物;3.2)获取主体物的每个像素RGB值,对RGB值相似的区域作为颜色一致或者相似处理;3.3)在识别出颜色的区域使用文字标记出该颜色。所述RGB值和颜色的对应关系为ASCII对照表,不同的RGB值对应何种颜色,在系统设计初始需要定义,如红色对应RGB值为(256,0,0),则可定义类红色区域为(256±x,0±x,0±x),x为微调偏移量。如图2~4所示,所述OpenCV的主体轮廓提取识别步骤为:3.1.1)在OpenCV库中调用findContours()函数查找轮廓;3.1.2)调用drawContours()画轮廓并进行轮廓填充;3.1.3)计算轮廓的面积和周长;3.1.4)提取轮廓凸包,矩形,最小外接矩形,外接圆;3.1.5)将获取到的轮廓与数据库中的图片进行对比,若对比的两者相似度达到设置的阈值则认为主体提取成功。图片相似度值对比方法为:3.1.5.1)使用python函数Image.open(path)分别读取对比库中的图像和需要对比的图像。3.1.5.2)计算两幅图片的均方差MSE:defmse(imageA,imageB):err=np.sum((imageA.astype("float")-imageB.astype("float"))**2)err/=float(imageA.shape[0]*imageA.shape[1])returnerr使用compare_ssim函数计算两幅图片的SSIM值:fromskimage.measureimportcompare_ssimasssim3.1.5.3)计算出的MSE值越小,则两图像越相似,或SSIM在[-1,1]之间,则代表两图像相似。本文档来自技高网...

【技术保护点】
1.一种屏幕颜色识别系统的识别方法,其步骤为:/n1)系统启动;/n2)对电子产品屏幕进行实时取帧;/n3)对屏幕主体物体的颜色进行识别并将颜色进行文字标注。/n

【技术特征摘要】
1.一种屏幕颜色识别系统的识别方法,其步骤为:
1)系统启动;
2)对电子产品屏幕进行实时取帧;
3)对屏幕主体物体的颜色进行识别并将颜色进行文字标注。


2.如权利要求1所述的屏幕颜色识别系统的识别方法,其特征在于:所述步骤2)中取帧采用OpenCV软件库,并对屏幕帧进行边缘提取,并对提取后的边缘进行锐化、光滑处理。


3.如权利要求1所述的屏幕颜色识别系统的识别方法,其特征在于:所述步骤3)中颜色的识别步骤为:
3.1)通过OpenCV软件库物体特征库进行搜索比对识别出主体的轮廓;若软件库中无法识别出物体,则将屏幕帧中封闭边缘图像作为主体物;
3.2)获取主体物的每个像素RGB值,对RGB值相似的区域作为颜色一致或者相似处理;
3.3)在识别出颜色的区域使用文字标记出该颜色。


4.如权利要求2所述的屏幕颜色识别系统的识别方法,其特征在于:所述RGB值和颜色的对应关系为ASCII对照表。


5.如权利要求2所述的屏幕颜色识别系统的识别方法,其特征在于:所述OpenCV的主体轮廓提取识别步骤为:
3.1.1)在OpenCV库中调用findContours()函数查找轮廓;
3.1.2)调用drawContours()画轮廓并进行轮廓填充;

【专利技术属性】
技术研发人员:邓鹏鹰汪小威危华明
申请(专利权)人:南宁学院
类型:发明
国别省市:广西;45

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1