机器视觉(十二):二维条码识别

目录:

机器视觉(一):概述

机器视觉(二):机器视觉硬件技术

机器视觉(三):摄像机标定技术

机器视觉(四):空域图像增强

机器视觉(五):机器视觉与世界杯

机器视觉(六):频域图像增强

机器视觉(七):图像分割

机器视觉(八):图像特征提取

机器视觉(九):图像配准

机器视觉(十):印刷体字符识别

机器视觉(十一):一维条码识别

机器视觉(十二):二维条码识别

🌏🧐以下为正文🦄🪐 

        一维条码的使用,必须依赖于后台的数据库,在没有数据库或不便联网的地方,一维条码的使用便受到了限制,发展信息密度高、容量大、更便于使用的二维条码技术成为必然趋势。

        PDF417二维条码是一种堆叠式二维条码,应用最为广泛。PDF417条码是由美国SYMBOL公司发明的,PDF(Portable Data File)意思是“便携数据文件”。组成条码的每一个条码字符由4个条和4个空共17个模块构成,故称为PDF417条码。 PDF417条码需要有417解码功能的条码阅读器才能识别。PDF417条码最大的优势在于其庞大的数据容量和极强的纠错能力。

一、PDF417二维条码的结构

        每个PDF417 符号由空白区包围的一系列层组成,其层数为3~90,每层由起始终止符、左右指示符及1~30个符号字符组成。

        每个符号字符包括4个条和4个空,每个条或空由1~6个模块组成,一个符号字符中,4个条和空的总模块数为17,故命名为PDF417。

        PDF417的符号字符集可分为三个相互独立的子集,即三个簇,每个簇均以不同的条、空形式表示929个符号字符值,即码字。三个簇的逻辑簇号为0、3 和6。对于一个给定的符号字符,其簇号定义为:

 二、符号字符的译码

(1)对图像进行二值化。

(2)提取边缘点。

(3)把边缘点投影到垂直方向上,根据投影点的多少得到字符排列的行数和每行所在的位置。

(4)根据步骤3的结果逐行扫描字符,每扫描得到4黑条带(设宽度为b1,b2,b3,b4)和4白条带(设宽度为s1,s2,s3,s4),w=(b1+b2+b3+b4+s1+s2+s3 + s4)/17得到单位宽度,然后bi/w(si/w)得到黑条带和白条带的标准宽度序列,根据这个序列查表得到相应的码值。

(5)从步骤4得到的码值序列在最终解码前需要进行纠错,纠错的方式是里德-所罗门纠错(又称里所码,Reed-solomon codes,简称RS codes),从而得到纠错后的码值序列,设得到的序列数组是data,长度是n。


http://www.niftyadmin.cn/n/29152.html

相关文章

【数据分析】(task4)数据可视化

note matplotlib的四个容器: Figure:顶层级,用来容纳子 Axes,一组具体绘图元素和画布(canvas)。 画板。Axes:matplotlib宇宙的核心,容纳了大量元素用来构造一幅幅子图,一…

CSS 特效之心形-彩虹-加载动画

CSS 特效之心形-彩虹-加载动画(居中抖动问题)参考描述效果HTMLCSS重置元素的部分默认样式bodyli动画定义指定animationul居中抖动问题代码总汇参考 项目描述搜索引擎BingMDNMDN Web Docs 描述 项目描述Edge109.0.1518.61 (正式版本) (64 位) 效果 HTML…

进程概念——Linux

“技术是时间积淀出来的,你能速成的东西,别人也可以速成,所以需要耐心学习” 猛戳订阅🍁🍁 👉Linux操作系统详解👈 🍁🍁 这里是目录标题一、冯诺依曼结构为什么要存在内存&#xff1…

文件没学懂没关系,我来教你快速学会文件

1. 什么是文件 文件通常是在磁盘或固态上的一段已经命名的存储区。C把文件看作是一系列连续的字节,每个字节都被单独读取。 在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的) 1.…

RockyLinux8.5安装k8s

架构 1master 1worker 1nfs k8s部署采用工具kubuadm,官方提供的工具 本文k8s版本为v1.26.1 本文主要包括以下五个步骤: 1.每台机器上安装runtime docker的安装 2.在每台机器上安装kubeadm,kubelet和kubectl 基本组件安装 3.创建集群 在…

仿写Dubbo-Java代理

概念 代理是一种设计模式。使用代理对象替换真实对象,实现不修改真实对象的前提下对其进行额外操作,对其进行扩展。spring中的aop就是使用代理实现的。 静态代理 静态代理中的真实对象和代理对象都需要实现同一个接口。对真实对象每个方法进行单独增强。…

左值和右值的概念

目录 1、什么是左值? 2、什么是右值? 3、左值和右值的区分 4、左值和右值的交叉引用 (1) 左值引用能否引用右值? (2) 右值引用能否引用左值? 1、什么是左值? 左值是一个表示数据的表达式(如变量名、…

GeoServer:Web Map Service(WMS) reference

OGC WMS标准定义了从服务器端请求地图(image)。GeoServer所支持的WMS1.1.1版本和WMS1.3.0版本被广泛使用(相应的标准规范文档分别为:WMS1.1.1、WMS1.3.0)。此外,GeoServer也支持Styled Layer Descriptor(SLD)定义的WMS拓展标准(点击此处查看,标准规范文档)。 目录 …