【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
前面有几篇文章,我们谈到过直线拟合、圆拟合和椭圆拟合。当时,我们的做法是,先找到了轮廓,接着找到了对应的中心点,借助于这些中心点完成图形拟合的。今天我们来学习另外一种图形查找的方法,它是通过ROI区域、参数配置,直接去寻找图形的。默认我们已经设定了图形查找的范围,接下来就是通过ROI区间、算法和参数来找到对应的图形。
1、创建工程和创建流程
首先需要依次创建工程、创建流程,这是使用软件的第一步。
2、导入图像
导入测试图像,就是把树形节点里面的【获取图像】直接拖过来即可。一开始的时候,图像是这样的,
3、寻找圆
提取圆的功能,位于【几何工具】下面的【寻找圆】。直接通过鼠标把控件拖到流程下面,双击打开。不出意外的话,应该可以看到这样的界面,
整个界面是单击完执行按钮之后的情形。首先,我们需要引入图像。接着,配置一下ROI区域。ROI区域,就是图像中蓝色连线部分,它有一个内圆,有一个外圆。内圆和外圆之间有直线连接。内圆尽量放在白色区域,外圆放在黑色区域。双击中间的蓝点,出现两个蓝点,通过这两个蓝点可以调整内圆和外圆半径的大小。最后,根据实际图像设置一下参数,比如扫描方向、灰度方向、边缘强度等等。这些都准备好了之后,就可以看到两条蓝线之间会多一个黄线,这个黄线就是算法发现的圆形。
如果圆形看不清楚,可以继续看左侧下方的结果输出打印,
4、整体测试
如果是整体测试的话,一般除了图像导入、寻找圆之外,还会多一个图像显示。这部分可以根据自己的需求灵活添加,
5、寻找直线
寻找直线这个控件的位置,也是和寻找圆一样,位于【几何工具】下面。直接拖过来双击即可。导入的图像,这个时候不再是圆,而是一个类似于钻石的图片,
这个时候,我们需要测量的是钻石左侧斜面或者右侧斜面的直线。这个功能可以通过寻找直线来完成,
寻找直线的操作,和寻找圆非常相似。首先是导入图像,这是基础。接着,就是设置ROI。和圆不同的是,ROI是一个矩形,而不是一个嵌套的圆环。我们把这个矩形进行旋转,逐步移动到需要测试的直线上面。移动的时候,覆盖截面区域即可。最后就是配置参数,比较重要的参数就是扫描方向、灰度方向和剔除距离。单击执行按钮之后,就可以看到一个长长的蓝线,这就是我们寻找到的直线。
如果这条蓝线看的不是很明显,那么在界面的左下方有一个信息的输出小窗口。上面提示我们直线的斜率是多少,以及直线的截距是多少。大家如果自己换算的话,一定要把y轴方向从图像的下方搬到上方去,这样算出来的数据擦才是对的。直接眼睛观察直线,得到的数据是错误的。这一点需要注意下。