Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种双色导线颜色提取与匹配方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:西北工业大学太仓长三角研究院;西北工业大学

摘要:本发明公开了一种双色导线颜色提取与匹配方法,首先获取导线图像;然后进行异常图像处理;接下来进行导线颜色提取;之后进行导线颜色匹配;最终实现了双色导线颜色提取与匹配方法。本发明方法能够实现导线颜色的提取与匹配,节省人工成本,提高识别效率、保障产品可靠性,为工业场景下导线颜色高准确率的匹配提供了一种有效的手段。

主权项:1.一种双色导线颜色提取与匹配方法,其特征在于,包括如下步骤:步骤1:获取导线图像;将导线水平放置在白色背景板上,相邻两根导线的距离控制在1厘米到2厘米之间,使用工业相机对导线拍照,得到大小为3072*2048的原始导线图像image1;步骤2:异常图像处理;步骤2-1:表征原始导线图像image1的数据是一个三维矩阵,维度是3072*2048*3,其中第三维对应每个像素点的颜色信息,分别对应蓝色B、绿色G、红色R三个颜色通道;步骤2-2:找到image1中白色背景对应的像素点,将其颜色修改为黑色,具体为:遍历image1中所有像素点,若像素点的值介于[240,240,240]与[255,255,255]之间,将其修改为[0,0,0],得到图像image2,image2维度与image1相同;步骤2-3:将image2转为灰度图,再将灰度图转为二值图,得到图像image3;步骤2-4:对图像image3提取轮廓,将所有轮廓按纵坐标由小到大排序,并舍弃其中面积小于设定阈值的轮廓,得到轮廓列表contours1;步骤2-5:定义一个与图像image3大小相同的二维图像mask用来存放轮廓信息,mask初始时每个像素值都为0;若contours1为空,在mask中间位置绘制一条水平的白色线段,转到步骤2-11;步骤2-6:若contours1不为空,则从contours1中取出一个轮廓;步骤2-7:在mask中相同的位置绘制与取出的轮廓相同的实心轮廓;步骤2-8:从第二个轮廓开始将当前轮廓与上一个轮廓的中心点纵坐标相减得到距离distance;步骤2-9:若distance大于300,在mask中的当前轮廓与上一轮廓的中间位置绘制一条水平的白色线段;若distance小于100,将mask中的当前轮廓与上一轮廓中心点用一条白色线段相连;步骤2-10:重复执行步骤2-6到步骤2-9,直到contours1为空;步骤2-11:遍历mask矩阵,对于像素值为0的点,将image2中相同位置的值改为[0,0,0];对于像素值为255的点,将image2中相同位置的值保留,操作结束后,将修改后的image2定义为image4;步骤3:导线颜色提取;步骤3-1:将步骤2得到的image4转灰度图,将灰度图转二值图得到图像image5;步骤3-2:对图像image5提取轮廓,将所有轮廓按纵坐标由小到大排序,并舍弃其中面积小于设定阈值的轮廓,得到轮廓列表contours2;步骤3-3:令lines表示用于存放导线图像的列表,初始时列表lines为空;步骤3-4:若contours2不为空,则从contours2中取出一个轮廓;步骤3-5:提取轮廓的外接矩形,在image4中截取与轮廓外接矩形相同大小和位置的图像,放入列表lines中;步骤3-6:重复步骤3-4和步骤3-5,直至contours2为空;步骤3-7:定义array1、array2为二维列表,array3为一维列表,三个列表初值均为空;定义二维列表point1和point2;定义color为维度为2*3列表,用于存放一根导线的两个颜色信息;步骤3-8:若lines不为空,则从lines中取出一个图像;步骤3-9:将图像line中每个像素点的值相加,依次存放到array1中相同位置;步骤3-10:取array1中值大于30的像素点的坐标信息,根据坐标信息依次从line中取出一个BGR值,按行存放到array2中;步骤3-11:依次将array2中每个像素点三个颜色通道的值相加,并将结果依次存放到一维列表array3中;步骤3-11:求array3中所有元素的平均值得到average;步骤3-12:遍历array3,若任一元素的值大于average,则将array2中相应位置的值按行存放到point1;若任一元素的值小于或等于average,则将array2中相应位置的值按行存放到point2;步骤3-13:计算point1中每一列的平均值,得到当前导线的第一个颜色信息;计算point2中每一列的平均值,得到当前导线的第二个颜色信息;将两个颜色信息加入列表color,再将color加入列表colors;步骤3-14:重复执行步骤3-8到步骤3-13,直至列表lines为空;步骤4:导线颜色匹配;将待匹配的导线的两种颜色信息存储在current中;步骤4-1:定义dists为大小为100的一维列表,初值为空,将用于记录当前待检测导线和colors中所有导线颜色的差异度;步骤4-2:如果列表colors不为空,则从列表colors中取出一根导线的颜色信息color1;步骤4-3:将current与color1的两个颜色信息分别做差、取平方之后相加,得到颜色差异度候选值dist1;步骤4-4:交换current中两个颜色信息的顺序之后,将current与color1的两个颜色信息分别做差取、取平方之后相加,得到颜色差异度候选值dist2;步骤4-5:令dist=min{dist1,dist2},将dist存入列表dists;步骤4-6:重复执行步骤4-2到步骤4-5直至colors为空;步骤4-7:如果dists为空,则输出错误信息;否则,查找dists中的最小值所在的位置,并将该位置赋值给order,输出order。

全文数据:

权利要求:

百度查询: 西北工业大学太仓长三角研究院 西北工业大学 一种双色导线颜色提取与匹配方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。