Halcon 二维码

1. 二维码

1.1 定义

  • 黑白相间的方块构成的图案。二维码又叫数据码,也叫图形码。

1.2 结构

  • 如果三个角有三个黑色定位框,则一定是QR码。
  • ‘AZTec Code’
    在这里插入图片描述
  • 什么特征都没有的是’Data Matrix ECC 200’
    在这里插入图片描述
  • Pdf417码
    在这里插入图片描述
  • Micro QR码
    在这里插入图片描述

1.3 原理

  • 二进制。

2. Halcon识别二维码基本流程

  • 流程
    • create_data_code_2d_model
    • set_data_code_2d_model
    • find_data_code_2d
    • clear_data_code_model
  • 获得中间结果
    • get_data_code_2d_results
    • get_data_code_2d_objects
    • get_data_code_2d_param

3. 难读取的二维码(码制不能错)

3.1 点状二维码

  • 先把点扩散为方块,构建新的二维码。
  • 形态学(区域形态学或灰度形态学)

3.2 有噪声的二维码

  • 均值滤波
    mean_image
  • 中值滤波
    median_image
  • 高斯滤波(加权均值滤波)
    gauss_filter
  • 高斯滤波的权重呈现正态分布,
    • 滤波的作用:平滑图像,与之相反的是锐化。
    • 均值/中值/高斯都属于低通滤波器。

3.3 投影变换(透视变换)

  • 先求矩阵再变换。
  • hom_vector_to_proj_hom_mat2d
  • projective_trans_image

3.4 设置参数

  • ‘polarity’ 二维码是黑底白模块,设置此参数。
  • symbol_size_min symbol_size_max’ 二维码的最小尺寸和最大尺寸,当二维码的【模块数量】比较固定时,可以考虑设置此参数,减少误判,提高效率。
  • module_size_min module_size_max’ 二维码模块最小最大像素尺寸,当二维码的模块很小或很大,超出默认值时,考虑设置此参数。
  • ‘contrast_min’ 二维码比较暗,将对比度调小。
  • ‘small_modules_robustness’ 最小模块的鲁棒性。当二维码的模块特别小(1个像素),把此参数设置为’high’,同时需要把’module_size_min’设置为1。
  • ‘module_gap_min’ ‘module_gap_max’ 模块之间的间隙,默认值为’no’.当模块之间的间隙比较大时,考虑设置此参数,但是间隙太大,超出模块尺寸的50%,则预处理是必不可少的。
  • ‘mirrored’ 当二维码是镜像(行列转置)时,考虑设置此参数为’yes’或’any’。
  • ‘finder_pattern_tolerance’ 取景窗的容忍度。当二维码存在一些干扰或者缺陷时,考虑此参数设置为’high’.
  • ‘default_parameters’ 缺省参数,最全面的参数。当二维码无法识别时,先将此参数设置为enhanced_recognition maximum_recognition(比较耗时)。当环境比较复杂,优先考虑此参数。
  • persistence 保留中间重要结果,想获得模块结果时,设置为 1
  • ‘contrast_tolerance’ 对比度容差,当局部光照不均匀时,将此参数设置为’high’,但要注意码制只针对 Data matrix ECC 200。
  • ‘module_aspect_min’ ‘module_aspect_max’ 模块的 高/宽 的最小比例,只针对 PDF417码。
  • ‘strict_quiet_zone’ 防止大码中找到小码。(主要是防止QR中找到Micro QR)

4. 凹凸情况(构建黑白相间的一维码)

  • 打光(同轴光)
  • 算法
  • 三维设备 ==> 扫描出深度图

5. 环形二维码

  • 将环形拉直(极坐标转换)在OCR中讲解

6. 圆柱面

  • 参见一维码解决方案

7. 参数训练/模型读写/参数查询 例子:ecc200_training

  • 参数训练: find_data_code_2d ‘train’ ‘all’
  • 查询参数算子:query_data_code_2d_params
  • 模型读写
    • write_data_code_2d_model
    • read_data_code_2d_model

8. 相关二维码识别halcon代码下载地址

链接:https://pan.baidu.com/s/1_0lmp2NmE4s0KPesowRvNw
提取码:0ypp

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

MechMaster

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

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

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

打赏作者

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

抵扣说明:

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

余额充值