explore_halcon.hdev(26)之p_do_2dbarcode函数模块

本文详细介绍了Halcon中二维码解码的过程,包括创建识别模型、设置模型参数、检测和读取图像中的二维码,以及获取解码结果。主要涉及create_data_code_2d_model、set_data_code_2d_param、find_data_code_2d和get_data_code_2d_results等函数的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Halcon的二维码解码步骤和解析:

作者:xh6300

出处:http://www.cnblogs.com/xh6300/

QR Code:

1.create_data_code_2d_model( : : SymbolType, GenParamName, GenParamValue : DataCodeHandle):创建二维码识别模型

SymbolType:二维码类型('Data Matrix ECC 200', 'QR Code', 'Micro QR Code', 'PDF417',  'Aztec Code')

2.set_data_code_2d_param( : : DataCodeHandle, GenParamName, GenParamValue : ):设置二维码模型的参数

GenParamName:('default_parameters':设置模型默认设置)

GenParamValue :对应GenParamName的值('standard_recognition':标准识别,'enhanced_recognition':增强识别,'maximum_recognition':最大值识别)

3.query_data_code_2d_params( : : DataCodeHandle, QueryName : GenParamName):获取解码时参数(如果没有设置,则返回默认值)

QueryName :返回参数名称,对应的值如下:

'get_model_params':用于查询二维码模型的参数

'get_result_params':用于查询符号搜索的字母数字结果的参数

'get_result_objects':用于访问搜索的图标对象的参数

4.find_data_code_2d(Image : SymbolXLDs : DataCodeHandle, GenParamName, GenParamValue : ResultHandles, DecodedDataStrings):检测和读取图像中的二维码数据编码符号或训练二维数据编码模型

参数GenParamName为空是表示直接找,找不到就返回,当设置为'train'时表示一面找一面调整模版参数

DecodedDataStrings:解码图像中所有检测到的二维数据编码符号的数据串

5.get_data_code_2d_results( : : DataCodeHandle, CandidateHandle, ResultNames : ResultValues):获取在搜索二维码期间积累的字母数字结果

CandidateHandle:二维码候选句柄,值如下:

'general':一般用于引用最后一个find_data_code_2d调用的结果,而不是引用特定的候选者

'all_results':在最后一次调用find_data_code_2d期间成功解码的所有符号

'all_candidates':最后一次调用find_data_code_2d期间研究的所有候选想(包括已经成功解码的符号)

'general'下的ResultNames值:

'result_num':成功解码符号的数量

'candidate_num':候选区数量

'pass_num':已完成的遍历数

'undecoded_num':被识别为符号蒂娜无法读取的候选项的数目

'search_level':查找到图像的发现的金字塔层级

'min_search_level':搜素符号的最低金字塔级别。金字塔级别的0对应于原始图像

'max_search_level':搜索符号的最高金字塔级别

'all_results'下的ResultNames值:

'model_type':二维码模型的类型

'module_height':模块的高度(以像素为单位)

'module_width':模块的宽度(以像素为单位)

'mirrored':指已成功解码的符号是否已镜像

'contrast':对符号对比度的估计。该值基于查找到的模型与背景之间的边缘梯度

'decoding_error':对于成功解码的符号,这是通过错误校正检测和纠正的错误数

'mask_pattern_ref':0<= 'mask_pattern_ref' <=7

'error_correction_level':包括错误纠正的程度

'polarity':符号的极性

'all_candidates'下的ResultNames值:

'status':只是解码会否成功或为何终止处理

6.get_data_code_2d_objects( : DataCodeObjects : DataCodeHandle, CandidateHandle, ObjectName : ):访问在搜索二维码期间创建的图标对象

ObjectName:要返回的图标对象的名称('candidate_xld':XLD轮廓)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌里随记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值