基于Data Matrix的二维条码的识别与应用 & y7 p0 K/ [6 M
摘要: 4 Y. k* }! i/ a$ K M$ p( n. r5 X S 7 S$ n" e! b" g- {0 ~本文基于Data Matrix二维条形码,使用Matlab的相关图像处理的工具包,利用各种图像处理的函数,对原始二维条形码的图像进行各种处理,给出了一种通用的二维条形码识别算法:首先将带有噪声、污损及背景干扰的原始Data Matrix图像进行二值化预处理,其次用均值滤波器去除噪音影响,实现滤波去噪处理;然后用多种边缘检测算子提取图像边缘,再用Radon变换精确定位“L”形边,确定“L”形的两个边的交点,通过仿射变换将图形旋正,进行插值处理以使图像规整化,最终实现译码。该算法通用性很强,并不单单局限于题中所述的几个图像的识别,从验证结果可以看出,该算法能提高二维条形码的识别率,具有较高的抗噪性。3 _3 I( c9 i$ ? P# v
$ C2 {- \! T0 C
关键字:- N" z. ~2 M; [5 E3 [: j% M
; y4 @% Q* M9 C4 ?2 X0 @. R; P$ d. c. V$ ~Data Matrix , Matlab图像处理,Radon变换 ,二维条码,边缘检测 ,仿射变换。- r8 q, U7 l# Z5 @
7 {, h+ Q1 V7 n9 t3 E# o7 E9 z背景 e c* L( d; @" m ; P- T g( i/ U条码技术从20世纪70年代初问世以来,经过几十年的发展,已经在商业流通、仓储、医疗卫生、图书情报、邮政、铁路、交通运输、生产自动化管理等领域得到了广泛的应用。条码技术的应用极大地提高了数据采集和信息处理的速度,改善了人们的工作和生活环境,提高了工作效率,并为管理的科学化和现代化做出了重要贡献。' q0 M. t$ q5 Z5 r
随着社会经济发展的需要,一直以来作为“商品条码”使用的一维条码已经不能满足于实际的需要,二维条码技术也就在这样的条件下产生了。区别于一维条码只能“标示”物品,二维条码通过在平面上布置信息,在编码范围、信息容量和错误纠正等特性上都有了很大的提高。二维条码不但可以“标示”物品,而且可以用来“存储”信息和数据,弥补了条码技术在实际应用领域的不足。二维条码技术已经成为当前一项新兴技术,并在世界范围内得到各行业普遍的关注和应用。 / F8 [. q) f' J- y- @2 y7 |; W) y" q- Q" C" ^7 D5 D* q
题目 . K: O2 m6 _4 |# j 0 \! U9 `* G* S7 h! g8 c1 Y2 p二维条码是一种通过在平面上将深色模块(用1表示)和浅色模块(用0表示)按照一定规则排列以便存储数据的条码技术。) Z8 |: M' q0 @, k' T5 {
二维条码的识别是通过将采集到的二维条码图像经过数学和图像的处理方法,尽可能将其中容纳的数据恢复回来的过程。例如,图1就是采集到的一幅二维条码“数字矩阵码”(Data Matrix)的图像 ' N2 N* D( w, e5 {: D8 E/ T: ] T9 M 2 Q5 U& U r- z+ _: G3 l5 X[img]file:///C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\Content.IE5\RMTUATEP\none[1].gif[/img] 4 b$ |' ^) {2 H6 f' c0 [3 ~9 Q2 k2 l* D
- m2 [! i+ C- \
[img]file:///C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\Content.IE5\RMTUATEP\none[1].gif[/img] * b& W$ Q+ v1 z# k
7 m/ X, s7 u! \3 |; T/ Z+ I& c2 n
下载地址: