2247| 0
|
[原创] NI Vision Assistant视觉助手图像处理教程 第10章 图像处理-Indentification识别 10.3 Barcode Reader条码阅器 |
NI Vision Assistant视觉助手图像处理教程 第10章 图像处理-Indentification识别 10.3 Barcode Reader条码阅读器
NI Vision Assistant视觉助手教程 第十章 图像处理-Indentification识别 第三节Barcode Reader条码阅读器 仪器阅读器简介 在NI视觉中,有好些功能函数属于仪器阅读器Instrument Readers。其中包含了Read Meters阅读仪表、液晶显示器LCD字符、一维条码Barcode、二维码2D Code等几类。其在LabVIEW Vision中属于一个函数子块-Instrument Readers,如下图所示: [attach]8477[/attach] 图1 NI Vision中的仪器阅读函数 仪器阅读函数可以用于开发诸如需要阅读仪表针对、七段数码管、条码、二维码的应用程序。当你想包含简单的仪表指针、LCD显示器、条码和二维码的图像中获得信息时,可以考虑使用仪器阅读器中的函数。 仪表测量函数Meter当需要从仪表或计量器中读取指针值时,仪表函数可以简化及加快应用程序的开发。这些函数提供了提取仪表或计量器指针位置的高级视觉处理功能。 你可以使用这些信息来创建不同的应用程序,例如计量器的标定。使用函数从可以表明指针的初始位置和满刻度的兴趣区域中计算指针的基点(0值)以及它的终端(最大值)。然后你可以使用这些VI利用前面计算得到的参数来读取指针的位置,从而得到指针的值。 识别过程包含了下面两个阶段: l 学习阶段,用户需要指定指针的终端(一般来讲需要指定四个点)。 l 分析阶段,指针正确的位置得到确定。 仪表函数被设计适用于那些有黑指针亮背景或亮指针黑背景的仪表或计量器读取。 仪表测量算法的限制本节解释了使用仪表测量函数算法的限制条件。该算法对照明变化是相当迟钝的。 在检测过程中,指针的基点位置是相当重要的。画指针的最初位置和满刻度位置的表示线时需要非常仔细(指针位置是通过一条直线来表示的)。基点的坐标和指针的尖端圆弧点的计算都是在设置阶段完成的。然后在检查过程中,这些坐标点会用于读取仪表指针测量值。 LabVIEW Vision中的仪表测量函数仪表测量函数在视觉助手中是没有的。这个具体原因不是很清楚,要说有多难也不是非常难。可能的原因是实际使用的比较少。以作者接触的应用项目,可能100个里面没有一个需要读取指针的。即使需要测量仪器仪表的,现代的仪表更多的都是数字显示的,指针式的非常少用了。实际生活中可能接触到仪表指针读取的可能有传统的汽车仪表盘、手表等。 不过即使这样,在NI自带的范围中是有这么一个指针读取的例子的。注意,该例子仅限早期版本中,具体不清楚是2012或2013版之前的。后面的版本中,已经没有该例子了。 [attach]8478[/attach] 图2 NI自带仪表测量范例 双击范例查找器中的例子,打开仪表测量函数。如下图所示: [attach]8481[/attach] 图3 MeterExample仪表测量例子 这个函数其实是一个比较简单的函数,在下面有一个简单的使用说明: 1. Run the VI第一步,运行VI。 2. Draw a line on the needlestarting from the tip to the base(Initial Position-0)第二步,在指针的开始处画一条直线,从指针的尖端到基点(初始位置-0)。 3. Click on the Line OK button第三步,点击Line OK按钮。 4. Draw a line on the needle(Rangeposition)第四步,在指针上画一条线(满范围刻度线位置) 5. Click on the Line OK button第五点,点击Line OK按钮。 通过上面五步,即可以实现仪表指针读取了。下面来看看效果: [attach]8479[/attach] 图4 第一步 运行VI
购买主题
本主题需向作者支付 5 元 才能浏览
| |
相关帖子 |
|
Powered by Discuz! X3.4
© 2001-2024 Discuz! Team.