一种视觉***的构建方法
技术领域
本发明涉及视觉***技术领域,尤其涉及一种视觉***的构建方法。
背景技术
视觉***是利用摄像机和软件代替人眼使得自动化设备拥有类似于人类的那种对目标进行分割、分类、识别、跟踪、判别决策的功能。
当前,配合工业机器人使用的视觉***,都是针对某种工件的定制产品,用于该特定工件的识别,开发周期长,功能单一,对外部环境的适应能力不强;更换工件后,需要对光照***、相机标定、模板处理算法、通讯接口、参数设置以及图像处理方法进行较大改动,来适应新工件的新特性。这样严重影响了客户产品的更新换代,不符合智能制造的技术要求,制约了视觉***的推广应用。而且,大部分视觉***的相机标定、模板匹配、特征测量等没有形成标准的模块,对使用者的技术水平要求高,因而实施起来很困难,且效率极低。
发明内容
为解决上述技术问题,本发明提供一种视觉***的构建方法,该方法构建出的视觉***功能多样,对外部环境的适应强能力强,可应用于识别不同的工件,从而降低了使用者的技术水平要求。
基于此,本发明提供一种视觉***的构建方法,包括如下步骤:
开发标准化的参数设置模块,用于设置***参数和工具参数;
开发标准化的数据采集模块,用于采集图像数据、标定数据和模板数据;
开发标准化的数据管理模块,用于数据存储、数据编辑和数据转换;
开发标准化的数据处理模块,用于图像数据优化、模板数据处理和检测数据分析;
开发标准化的数据通讯模块,用于模块内部通讯、各模块间通讯和各***间通讯;
开发标准化的软件工具包,用于实现特定功能。
在上述视觉***的构建方法中,所述开发标准化的参数设置模块的步骤包括:
设置相机触发模式为外部触发,锁定触发源及触发极性,设置曝光时间及曝光增益为中间值,设置白平衡调节为自动模式,将设置好的参数做成独立模块,模块预留出光源亮度调节接口,把调节分成10等级,输入0~10的数字以实现拍照的不同效果。
在上述视觉***的构建方法中,所述开发标准化的数据采集模块的步骤包括:
将不同相机的数据采集接口放在下层,上层写搜索函数,实现硬件遍历,同时根据相机类型调用对应的采集接口,然后在上层做标准的图像采集输出接口;
导入13张7×7棋盘格标定图像,通过计算棋盘格的交点,求取相机的内参和外参,将标定结果做成标准的函数,留有图像输入接口和标定结果输出接口;
根据模板图像的宽长比、紧凑度、饱满度、圆形度建立模板创建函数。
在上述视觉***的构建方法中,所述开发标准化的数据管理模块的步骤包括:
采用标准IplImage结构存储图像,创建特征类、模板类、图形类等数据存储结构;模块内部图像存储结构统一,模块之间留有输出不同格式图像接口,包括HImage、CvMat、Byte[];
模块提供图像几何变换、选择、复制接口,同时将ROI的处理增加到标准模块中,提供其他模块需要的数据接口。
在上述视觉***的构建方法中,所述开发标准化的数据处理模块的步骤包括:
放置被检工件之前,采集检测背景图像,用于检测图像的背景过滤及减少光源不均匀产生的影响;
提取模板处理的通用特性,实现对外接口的标准化,一定体积范围内的不同类型工件,都可以使用相同的算法实现识别。
在上述视觉***的构建方法中,所述开发标准化的数据通讯模块的步骤包括:
模块内部使用同一变量;
各模块间通讯采用共用内存的方式通讯,提高处理效率,而且所有数据使用BYTE类型存储;
针对不同的自动化设备,在标准的TCP/IP协议基础上,扩展特定功能,用于兼容不同的数据交互方式。
在上述视觉***的构建方法中,所述开发标准化的软件工具包的步骤包括:
开发颜色抽取工具、几何测量工具、功能补正工具、模糊处理工具、瑕疵检测工具、条码扫描工具、字符识别工具、边缘强化工具、实时差分工具、数据统计工具中的一种或几种;
不同的工具可以进行任意的组合。
实施本发明实施例,具有如下有益效果:
本发明提供了一种视觉***的构建方法,跟现有技术相比,该方法通过对视觉***的各功能模块进行标准化的设计,使得视觉***的功能更加多样化,增强了视觉***对外部环境的适应能力,使其可应用于识别不同的工件,同时还降低了使用者的技术水平要求。
附图说明
图1是本发明实施例的视觉***的结构图。
具体实施方式
下面将接合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供一种图1所示的视觉***的构建方法,包括如下步骤:
S1,开发标准化的参数设置模块,用于设置***参数和工具参数。具体而言,设置相机触发模式为外部触发,锁定触发源及触发极性,设置曝光时间及曝光增益为中间值,设置白平衡调节为自动模式,将设置好的参数做成独立模块,模块预留出光源亮度调节接口,把调节分成10等级,输入0~10的数字以实现拍照的不同效果。
S2,开发标准化的数据采集模块,用于采集图像数据、标定数据和模板数据。具体而言,将不同相机的数据采集接口放在下层,上层写搜索函数,实现硬件遍历,同时根据相机类型调用对应的采集接口,然后在上层做标准的图像采集输出接口;导入13张7×7棋盘格标定图像,通过计算棋盘格的交点,求取相机的内参和外参,将标定结果做成标准的函数,留有图像输入接口和标定结果输出接口;根据模板图像的宽长比、紧凑度、饱满度、圆形度建立模板创建函数。
S3,开发标准化的数据管理模块,用于数据存储、数据编辑和数据转换。具体而言,采用标准IplImage结构存储图像,创建特征类、模板类、图形类等数据存储结构;模块内部图像存储结构统一,模块之间留有输出不同格式图像接口,包括HImage、CvMat、Byte[];模块提供图像几何变换、选择、复制接口,同时将ROI的处理增加到标准模块中,提供其他模块需要的数据接口。
S4,开发标准化的数据处理模块,用于图像数据优化、模板数据处理和检测数据分析。具体而言,放置被检工件之前,采集检测背景图像,用于检测图像的背景过滤及减少光源不均匀产生的影响;提取模板处理的通用特性,实现对外接口的标准化,一定体积范围内的不同类型工件,都可以使用相同的算法实现识别。
S5,开发标准化的数据通讯模块,用于模块内部通讯、各模块间通讯和各***间通讯。具体而言,模块内部使用同一变量;各模块间通讯采用共用内存的方式通讯,提高处理效率,而且所有数据使用BYTE类型存储;针对不同的自动化设备,在标准的TCP/IP协议基础上,扩展特定功能,用于兼容不同的数据交互方式。
S6,开发标准化的软件工具包,用于实现特定功能。具体而言,开发颜色抽取工具、几何测量工具、功能补正工具、模糊处理工具、瑕疵检测工具、条码扫描工具、字符识别工具、边缘强化工具、实时差分工具、数据统计工具中的一种或几种;不同的工具可以进行任意的组合。
综上,本发明实施例提供了一种视觉***的构建方法,跟现有技术相比,该方法通过对视觉***的各功能模块进行标准化的设计,使得视觉***的功能更加多样化,增强了视觉***对外部环境的适应能力,使其可应用于识别不同的工件,同时还降低了使用者的技术水平要求。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变形,这些改进和变形也视为本发明的保护范围。