条码读取器vTool#
Barcode Reader 可以检测并解码通过图像输入引脚接收的图像中的条码。它通过区域、文本和类型输出引脚来输出结果。
区域输出包含找到条码的区域。文本输出是由条码编码的文本字符串。类型输出指示找到的条码类型。
如果您在检测前使用 ROI Creator vTool 指定感兴趣区域,则 Barcode Reader 会通过其 Roi 输入引脚接受 ROI 数据。这样可减少 Barcode Reader 在其中搜索条形码的图像区域,从而有助于消除错误候选码。同时,这也会让处理速度更快且更稳定。
Barcode Reader 版本#
有三个版本的 Barcode Reader 可用。下表显示了版本之间的差异。单击表标题中的版本可直接跳转到本主题中的相关部分。
Starter | Basic | Pro | |
---|---|---|---|
您可以检测到多少条码? | 2 | 2 | 不受限制 |
Minimum line width of barcodes | 2 pixels | 2 pixels | 2 pixels |
您可以指定检测的超时时间吗? | 无 | 是 | 是 |
您可以搜索单个条码类型或条码组吗? | 类型 | 组 | 组和类型 |
您可以同时搜索多少组条码? | 无,只有单个条码类型 | 1 | 不受限制 |
ROI 输入引脚的有效数据类型 | RectangleF | RectangleF、RectangleF 数组、区域、区域数组 | RectangleF、RectangleF 数组、区域、区域数组 |
运作原理#
根据 Barcode Reader 的版本,您可以选择条码类型组或单个条码类型进行检测和解码。在一个图像中可以检测到多少条码也取决于版本。
检测标准#
条码必须是前暗后亮图案。
如果您的条码以反极性打印,请运行预处理步骤来反转输入图像,例如通过使用 Gray Value Transformer vTool 来实现。
优化条码检测#
根据 Barcode Reader 版本,您可以使用以下选项来优化检测过程:
- 限制要检测的条码数量:如果您知道您的图像仅包含一定数量的条码,则将 Barcode Reader 配置为仅查找该数量的条码可能会节省处理时间。找到指定数量的条码后,vTool 会移到下一个图像。如果条码数量不同或未知,请配置 Barcode Reader 以查找更多代码。
- 限制要检测的条码类型: Basler 建议仅选择您希望在图像中找到的那些条码类型。尤其是选择 MSI 和 PharmaCode 条码可能会增加错误检测的数量。
- 超时:您可以指定超时以在一定时间后结束检测。如果超时,则检测过程将停止并继续下一个图像,即使尚未找到指定数量的条码也如此。
Basler 建议将超时设置为略低于所需的时间限制。这是因为 vTool 不会立即停止检测过程。因此,将超时设置为所需时间限制的 70%–80%。 - 指定 ROI:通过使用 ROI Creator vTool 指定感兴趣区域,您可以缩小 Barcode Reader 搜索条码的区域,从而有助于消除错误候选条码。连带结果是,处理速度会更快、更稳健。
信息
- 如果您是第一次打开 Barcode Reader Basic 或 Barcode Reader Starter,则不会设置条码类型。您必须首先选择条码类型。如果未设置条码,vTool 将通过图像输入引脚报告收到的每个输入图像的错误。
- 如果您第一次打开 Barcode Reader Pro,将选择除 MSI 和 PharmaCode 之外的所有条码组。
- PharmaCode 条形码是一种潜在条数较少的代码。请注意,在带有线状图案背景的图像中,可能会错误地发现 PharmaCode。
- MSI 条形码是非自检代码。请注意,在某些图像中可能会错误地发现 MSI 代码。
常见用例#
- 读取条码:在这种情况下,您只需连接文本输出引脚,即可输出解码后的字符串。还可用来连接类型输出引脚以了解解码了哪种类型的条码。
- 确定条形码的 positions:使用从 Regions 输出引脚返回的条形码的位置和大小进行后续处理。
Barcode Reader Starter#
Barcode Reader Starter 可以检测单个条码类型。
支持以下条形类型:
- Codabar
- Code 128
- Code 39
- Code 93
- Databar
- DataBar Expanded
- EAN-13
- EAN-8
- 2/5 Interleaved
- UPC-A
- UPC-E
您可以在一个图像中检测到一个或两个条码。将数量限制为图像中的预期条码数量可以节省处理时间。
配置 vTool#
要配置 Barcode Reader Starter vTool:
- 在 vTool 设置区域的配方管理窗格中,单击打开设置或双击 vTool。
Barcode Reader Starter 对话框即打开。 - 在条码类型区域中,选择要查找的条码类型。
- 在 Number of Barcodes 区域中,选择要检测的条形码数量。
您可以在引脚数据视图中查看 Barcode Reader Basic 的结果。在这里,您可以选择要显示的输出。
Barcode Reader Basic#
Barcode Reader Basic 可以检测条码类型组。这些组中的大多数包括几种不同的条码类型。通过选择一个组,可以检测该组中包含的所有类型。例如,通过选择 Code 39,在图像中检测类型 Code 39 和 Code 93。
支持以下条形码类型组:
- EAN: EAN-8、EAN-8 附加组件 2、EAN-8 附加组件 5、EAN-13、EAN-13 附加组件 2、EAN-13 附加组件 5
- UPC: UPC-A、UPC-A 附加组件 2、UPC-A 附加组件 5、UPC-E、UPC-E 附加组件 2、UPC-E 附加组件 5
- GS1:Code 128、GS1-128、GS1 DataBar Omnidirectional、GS1 DataBar Stacked Omnidirectional、GS1 DataBar Stacked、GS1 DataBar Expanded、GS1 DataBar Expanded Stacked、GS1 DataBar Limited、GS1 DataBar Truncated
- 2/5: 2/5 Industrial、2/5 Interleaved
- Code 39: Code 39、Code 93
- Codabar: Codabar
- MSI: MSI
- PharmaCode: PharmaCode
您可以选择一个条码类型组并检测图像中的一个或两个条码。将数量限制为图像中的预期条码数量可以节省处理时间。
配置 vTool#
配置 Barcode Reader Basic vTool:
- 在 vTool 设置区域的配方管理窗格中,单击打开设置或双击 vTool。
Barcode Reader Basic 对话框即打开。 - 在条码类型组区域中,选择要查找的条码类型。
- 在 Number of Barcodes 区域中,选择要检测的条形码数量。
- 在 Timeout 区域中,指定是否要在一定时间后结束检测。如果要指定超时,请清除 No timeout 复选框并在输入字段中输入所需的超时。
您可以在引脚数据视图中查看 Barcode Reader Basic 的结果。在这里,您可以选择要显示的输出。
Barcode Reader Pro#
Barcode Reader Pro 可以检测多组条码类型或单个条码类型。大多数条码类型组包括数个条码类型。通过选择一个组,可以检测该组中包含的所有类型。例如,通过选择 Code 39,在图像中检测类型 Code 39 和 Code 93。
您可以根据需要选择尽可能多的条码类型组或单个条码类型。可以检测的条码数量没有限制。将数量限制为图像中的预期代码数量可以节省处理时间。
支持以下条形码类型组:
- EAN: EAN-8、EAN-8 附加组件 2、EAN-8 附加组件 5、EAN-13、EAN-13 附加组件 2、EAN-13 附加组件 5
- UPC: UPC-A、UPC-A 附加组件 2、UPC-A 附加组件 5、UPC-E、UPC-E 附加组件 2、UPC-E 附加组件 5
- GS1:Code 128、GS1-128、GS1 DataBar Omnidirectional、GS1 DataBar Stacked Omnidirectional、GS1 DataBar Stacked、GS1 DataBar Expanded、GS1 DataBar Expanded Stacked、GS1 DataBar Limited、GS1 DataBar Truncated
- 2/5: 2/5 Industrial、2/5 Interleaved
- Code 39:Code 32、Code 39、Code 93
- Codabar: Codabar
- MSI: MSI
- PharmaCode: PharmaCode
配置 vTool#
配置 Barcode Reader Pro vTool:
- 在 vTool 设置区域的配方管理窗格中,单击打开设置或双击 vTool。
Barcode Reader Pro 对话框即打开。 - 在条码类型区域中,选择要查找的条码类型组或条码类型。
- 在 Number of Barcodes 区域中,选择要检测的条形码数量。
- 在 Timeout 区域中,指定是否要在一定时间后结束检测。如果要指定超时,请清除 No timeout 复选框并在输入字段中输入所需的超时。
您可以在引脚数据视图中查看 Barcode Reader Pro 的结果。在这里,您可以选择要显示的输出。
输入#
图像#
直接从 Camera vTool 或从输出图像的 vTool(例如 Image Format Converter vTool)接受图像。
- 数据类型:图像
- 图像格式:8 位到 16 位单色或彩色图像。彩色图像在内部转换为单色图像。
ROI#
从 ROI Creator vTool 或任何其他可输出区域或矩形的 vTool 中接受感兴趣区域。多个矩形或区域在内部合并以形成单个感兴趣区域。Starter 版本仅接受 RectangleF。
- 数据类型:RectangleF、RectangleF 数组、区域、区域数组
输出#
文本#
返回以条形码编码的文本字符串。
- 数据类型:字符串数组
区域#
返回找到的每个条形码的区域。该区域为矩形。它可以用于可视化目的或用于后续的特征提取。
- 数据类型:区域数组
类型#
返回找到的每个条码的类型。
- 数据类型:字符串数组
相关的 vTools#
典型前置项#
典型后置项#
- Region Feature Extraction vTool
允许您确定找到的条码的中心、大小和方向。