HALCON中级篇:数据码识别

数据码

数据码是一种特殊的用于编码文本和数字的二维图案,HALCON能够读大多数流行的数据码:Data Matrix ECC 200, QR Code, Micro QR Code, Aztec Code,和PDF417。这些码由所谓的定位图案组成,其被用来定位图案,并得到有关几何属性的基本信息。由于特殊的码设计,码本身包含了多个点或者小方块,即使有些部分被弄乱,它们也能被解码。

HALCON数据码阅读器的优势就是它的易用性,没有在编程或者图像处理方面先进经验的要求,仅仅是几个清除简单排序的算子的应用。还有,数据码阅读器是非常强且灵活的,其变现在能够读取许多打印风格的码和自动学习最优化参数的可能性。

基本概念

条码读取由四个主要步骤组成,即获取图像、创建数据码模型、运用感兴趣区域、读取数据码、摧毁数据码码模型。

HALCON中级篇:数据码识别

获取图像

对于在线部分,例如在仅仅读取期间,图像被获取。

创建数据码模型

首先,你可以用create_data_code_2d_mode去创建一个数据码模型,这个模型提供有关码结构所有必要信息的阅读器。对于正常打印的码,仅仅需要名字需要被提供,HALCON能够选择合适的默认参数。对于特殊的情况,通过传入特定的参数来修改模型。

读数据码

去读数据码,仅仅需要一个算子:find_data_code_2d,它将定位一个或者多个数据码并且解码内容。

毁掉条码模型

当你不在需要数据码模型的时候,你可以用算子clear_data_code_2d_model去毁掉它。

第一个例子

作为基本概念的例子,这有一个读芯片上数据码的简单程序。

从文件中读取一张图像后,调用算子create_data_code_2d_model产生一个数据码模型。作为仅仅要求的参数值,码名‘Data Matrix ECC 200’被指定。

HALCON中级篇:数据码识别

然后,用算子find_data_code_2d去读取数据码。

HALCON中级篇:数据码识别

在程序的最后,用算子clear_data_code_2d_model去毁掉创建的码模型。

HALCON中级篇:数据码识别

数据码识别的效果图为:

HALCON中级篇:数据码识别


分享到:


相關文章: