当前位置:文档之家› MATLAB课程设计答辩报告

MATLAB课程设计答辩报告

中北大学

课程设计说明书

学生姓名:学号:

学院:

专业:

题目:

指导教师:职称:

2015 年 1 月 5 日

中北大学

课程设计说明书

14/15 学年第一学期

学院:

专业:

学生姓名:学号:

课程设计题目:图像分割技术应用—形态学图像分割

起迄日期:2015年1月5 日~2015年1月16 日

课程设计地点:

指导教师:

系主任:

下达任务书日期: 2015 年1月 5 日

目录

1设计方案简介 (2)

1. .1什么是二维条形码: (2)

1.2.维码与一维码的比较 (2)

1.3.二维码识别的原理(以QR码为例): (3)

1.3.1QR码简介 (3)

1.4 QR二维码的识别原理 (4)

1.4.1定位 (4)

1.4.2 预处理 (5)

1.5灰度化 (5)

1.6二值化 (6)

2.1图像增强处理的基本原理 (8)

2.1,1图像增强所包含的主要内容 (8)

2.1.2直方图修整法 (8)

2.2图像阈值分割技术基本原理 (14)

2.3图像局部区域填充基本原理 (15)

2.3.1基本选择方法 (15)

2.3.2特定区域填充 (15)

3设计程序 (16)

4设计结果 (17)

5.设计评述,设计者对本设计的评述及通过设计的收获体会 (18)

6.参考文献 (19)

1设计方案简介

1. .1什么是二维条形码:

条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。

二维条码是用某种特定的几何图形按一定规律在平面(二维方向)上分布的条、空相间的图形来记录数据符号信息。如下图所示

图1

1.2.维码与一维码的比较

表格1

1.3.二维码识别的原理(以QR码为例):

1.3.1QR码简介

QR 码是快速识别矩阵码( quick response code)的简称,最早由日本Denso 公司在1994 年9 月推出,我国于2000 年底颁布了QR 码的国家标准。QR码符号呈正方形,由空白区、功能图形区、数据图形区组成。功能图形区又分为位置探测图形、校正图形、格式信息、版本信息、定位图形等不同图形格式,如下图所示。各部分图形都由深色模块( 代表二进制1) 或浅色模块( 代表二进制0) 组成,位置清晰,功能性强,有利于进行图像处理和识别。根据编码数据量的多少,QR 码可以分为40 个版本,版本1 符号大小为21 × 21 模块。从版本1 到版本40,符号容量越来越大,相应的图像所占打印面积也随之增大,每增大一个版本,符号图像的每边就增加4 个模块。QR 码有较强的数据容错能力,使用Reed -Solomon 码进行差错控制。根据需要,可以设定L、M、Q、H 四个纠错等级,分别可恢复传输或识读出错的约7%、15%、25%、30% 的码字信息。

图2

1. 位置探测图形、位置探测图形分隔符:用于对二维码的定位,对每个QR码来说,位置都是固定存在的,只是大小规格会有所差异;这些黑白间隔的矩形块很容易进行图像处理的检测。

2. 校正图形:根据尺寸的不同,矫正图形的个数也不同。矫正图形主要用于QR 码形状的矫正,尤其是当QR码印刷在不平坦的面上,或者拍照时候发生畸变等。

3. 定位图形:这些小的黑白相间的格子就好像坐标轴,在二维码上定义了网格。

4. 格式信息:表示该二维码的纠错级别,分为L、M、Q、H;

5. 数据区域:使用黑白的二进制网格编码内容。8个格子可以编码一个字节。

6. 版本信息:即二维码的规格,QR码符号共有40种规格的矩阵(一般为黑白色),从21x21(版本1),到177x177(版本40),每一版本符号比前一版本每边增加4个模块。

7. 纠错码字:用于修正二维码损坏带来的错误。

1.4 QR二维码的识别原理

1.4.1定位

手机拍摄QR 码图像时,可能会同时采集到条码周围其他的图像。这些干扰图像会增加图像处理的复杂度,因此,可以把这些没必要的干扰图像通过裁切的方式去除。校正后,直接对正方形A'B'C'D'外的区域裁切,就可以去除其余背景。

QR 码符号中有3 个位置探测图形,分别位于符号图像4 个角中的3 个角,每个位置探测图像都是由固定深浅颜色的模块组成。模块深浅颜色顺序为深色—浅色—深色—浅色—深色,各元素宽度的比例为1∶ 1∶ 3∶ 1∶ 1(如下图所示)。即使图像有旋转,位置探测图像的模块颜色顺序和宽度比例也不变。对二值化后的图像按行、列分别逐点扫描,把同一灰度级的相邻像素记录为线段。如果有5 段线段的长度比例符合1∶ 1∶ 3 ∶ 1 ∶ 1,且深浅颜色顺序为深—浅—深—浅—深,则记录该线段。扫描完后,把行相邻的线段分为1 组,去除与所有线段都不相邻的行线段( 可能是随机的干扰线段) 。同样处理列线段,把行线段组和列线段组中相互交叉的组分类,求出交叉的行、列线段组的中心点,即为位置探测图形的中心。

图3

1.4.2 预处理

基本原理:QR 码作为手机二维码,其应用模式如下图所示。手机等智能设备通过摄像头采集带有条码符号的图像,对图像进行灰度化、二值化、旋转校正等预处理,进行条码检测。如果检测到非QR 码,则重新采集; 如果是QR 码,则进行图像信息的取样。用Reed - Solomon 码的译码算法对取到的数据进行纠错译码,统计出现的错误数量。如果错误数量超出纠错容量,则纠错译码失败,重新采集图像; 如果可以正确进行纠错译码,则把纠错后的信息进行各种数据模式下的译码,恢复出编码信息,继而根据应用模式进行信息输出、发送短信或网址跳转等后续处理。

图4

1.5灰度化

智能设备通过摄像头采集到的图像一般是彩色图像。因为QR 码携带的信息只需深浅两色即可表征,所以可以把彩色图转换为灰度图,继而转换为二值图像来处理,灰度化和二值化后可以显著降低图像处理的复杂度。摄像头采集到的彩色图像,一般是在RGB 空间编码的。每个像素分别用1 个字节表示R、G、B 三原色。如果把RGB 空间转换为YUV色彩空间,那么Y 分量刚好表示像素的亮度,可以作为灰度值。转换公式为

转换时,不必计算U 和V 两个分量的值,只需按照Y = 0. 299R + 0. 587G + 0.

114B ( 2)计算每个像素对应的灰度值,存储为1 个字节( 即256 灰度级) 即可。

1.6二值化

在用手机摄像头采集图像时,由于拍摄条件不同,环境光源的干扰较多,采集的图像经过灰度化后光线往往是不均衡的,如图( a) 所示。如果直接对其进行二值化,使用单一阈值,则会把灰色的背景区域处理成为黑色前景,掩盖了条码符号的信息。图( b) 所示为使用单阈值算法生成自动阈值进行二值化的结果。可见,用这种方法二值化的图像难以恢复条码信息。对照该图像的直方图可见,直方图信息明显分为3 个波峰: 第1个波峰对应黑色的条码模块;第2个波峰对应灰色背景;第3个波峰对应白色模块和空白区域。为此,考虑对图像进行分块,应用改进的Niblack 局部阈值化算法,分别进行二值化[3 - 4]。图像的直方图如图( c) 所示,明显具有3 峰结构。按照直方图计算3 峰的区间,按区间边界的灰度值对图像进行分区。对每个区域分别二值化,再叠加,得到全局的二值化图像,如图( d) 所示。可见,多阈值进行的二值化效果明显高于单一阈值,可以有效去除光线不均的影响。为增强算法的适应性,避免对光线均衡图像处理的复杂化,可按照以下步骤分类进行:

1) 计算并考察输入图像的直方图,如果直方图呈现明显的双峰结构,说明该图像的光线均衡,直接用直方图双峰法计算全局阈值,对图像进行二值化;

2) 如果图像直方图呈现单峰或弱双峰结构,说明图像偏亮或偏暗,可使用Otsu 算法计算全局阈值进行二值化;

3) 如果图像直方图具有明显的3 峰结构,说明图像光照不均,可对图像进行分块,使用改进的Niblack 多阈值方法二值化图像。

注释:灰度级直方图是灰度级的函数,描述图像中具有该灰度级像素的个数。如:

2.1图像增强处理的基本原理

2.1,1图像增强所包含的主要内容

2.1.2直方图修整法

灰度直方图反映了数字图像中每一灰度级与其出现频率间的关系,它能描述该图

像的概貌。通过修改直方图的方法增强图像是一种实用而有效的处理技术。直方图修整法包括直方图均衡化及直方图规定化两类。(1)直方图均衡化

直方图均衡化是将原图像通过某种变换,得到一幅灰度直方图为均匀分布的新图像的方法。下面先讨论连续变化图像的均衡化问题,然后推广到离散的数字图像上。为讨论方便起见,设r和s分别表示归一化了的原图像灰度和经直方图修正后的图

像灰度。即。在[0,1]区间内的任一个r值,都可产生一个s值,且

T(r)作为变换函数,满足下列条件:

①在0≤r≤1内为单调递增函数,保证灰度级从黑到白的次序不变;

②在0≤r≤1内,有0≤T(r)≤1,确保映射后的像素灰度在允许的范围内。

反变换关系为,T-1(s)对s同样满足上述两个条件。由概率论理

论可知,如果已知随机变量r的概率密度为pr(r),而随机变量s是r的函数,则s 的概率密度ps(s)可以由pr(r)求出。假定随机变量s的分布函数用Fs(s) 表示,根据分布函数定义

公式1利用密度函数是分布函数的导数的关系,等式两边对s求导,有:

公式2

可见,输出图像的概率密度函数可以通过变换函数T(r)可以控制图像灰度级的概率密度函数,从而改善图像的灰度层次,这就是直方图修改技术的基础。

从人眼视觉特性来考虑,一幅图像的直方图如果是均匀分布的,即Ps(s)=k(归一化时k=1)时,该图像色调给人的感觉上该图像比较协调。因此要求将原直方图通过T(r)调整为均匀分布的.然后反过来按均衡化的直方图去调整原图像,以满足人眼

视觉要求的目的。因为归一化假定,由密度函数则有

,两边积分得,上式表明,当变换函数为r的累积分布函数时,能达到直方图均衡化的目的。对于离散的数字图像,用频率来代替概率,则变换函数T(rk)的离散形式可表示为:

公式3

上式表明,均衡后各像素的灰度值sk可直接由原图像的直方图算出。一幅图像sk同rk之间的关系称为该图像的累积灰度直方图。

图6

下面举例说明直方图均衡过程。例:假定有一幅总像素为n=64×64的图像,灰度级数为8,各灰度级分布列于表中。对其均衡化计算过程如下:

表格2

原图像的直方图均衡后图像的直方图

直方图均衡化示例

(2)直方图规定化

在某些情况下,并不一定需要具有均匀直方图的图像,有时需要具有特定的直方图的图像,以便能够增强图像中某些灰度级。直方图规定化方法就是针对上述思想提出来的。直方图规定化是使原图像灰度直方图变成规定形状的直方图而对图像作修正的增强方法。可见,它是对直方图均衡化处理的一种有效的扩展。直方图均衡化处理是直方图规定化的一个特例。对于直方图规定化,下面仍从灰度连续变化的概率密度函数出发进行推导,然后推广出灰度离散的图像直方图规定化算法。假设pr(r)和pz(z)分别表示已

归一化的原始图像灰度分布的概率密度函数和希望得到的图像的概率密度函数。首先对原始图像进行直方图均衡化,即求变换函数:

假定已得到了所希望的图像,对它也进行均衡化处理,即

它的逆变换是

这表明可由均衡化后的灰度得到希望图像的灰度。

若对原始图像和希望图像都作了均衡化处理,则二者均衡化的ps(s)和pv(v)相同,即都为均匀分布的密度函数。由s代替v 得 z=G-1(s),这就是所求得的变换表达式。根据上述思想,可总结出直方图规定化增强处理的步骤如下:

①对原始图像作直方图均衡化处理;

②按照希望得到的图像的灰度概率密度函数pz(z),求得变换函数G(z);

③用步骤①得到的灰度级s作逆变换z= G-1(s)。

经过以上处理得到的图像的灰度级将具有规定的概率密度函数pz(z)。采用与直方图均衡相同的原始图像数据(64×64像素且具有8级灰度),其灰度级分布列于表中。给定的直方图的灰度分布列于表中。对应的直方图如下:

原图像的直方图规定化直方图

原图像的直方图规定的直方图规定化后图像的直方图利用直方图规定化方法进行图像增强的主要困难在于要构成有意义的直方图。图像经直方图规定化,其增强效果要有利于人的视觉判读或便于机器识别。下面是一个直方图规定化应用实例。

图(C)、(c)是将图像(A)按图(b)的直方图进行规定化得到的结果及其直方图。通过对比可以看出图(C)的对比度同图(B)接近一致,对应的直方图形状差异也不大。这样有利于影像融合处理,保证融合影像光谱特性变化小。

2.2图像阈值分割技术基本原理

所谓图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成若干个互不相交的区域,使得这些特征在同一区域内,表现出一致性或相似性,而在不同区域间表现出明显的不同。简单的讲,就是在一幅图像中,把目标从背景中分离出来,以便于进一步处理。图像分割是图像处理与计算机视觉领域低层次视觉中最为基础和重要的领域之一,它是对图像进行视觉分析和模式识别的基本前提。同时它也是一个经典难题,到目前为止既不存在一种通用的图像分割方法,也不存在一种判断是否分割成功的客观标准]5[。

在对图像的研究和应用中,人们往往仅对图像中的某些部分感兴趣,这些部分称为目标或前景(其他部分称为背景),他们一般对应图像中特定的、具有独特性质的区域。为了辨识和分析目标,需要将他们分离提取出来,在此基础上才有可能对目标进一步利用。图像分割就是指把图像分成格局特性的区域并提取出感兴趣目标的技术和过程。这里特性可以是象素的灰度、颜色、纹理等,预先定义的目标可以对应单个区域,也可以对应多个区域。现有的图像分割算法有:阈值分割、边缘检测和区域提取法。本文着重研究基于阈值法的图像分割技术。

若图像中目标和背景具有不同的灰度集合:目标灰度集合与背景灰度集合,且

两个灰度集合可用一个灰度级阈值T 进行分割。这样就可以用阈值分割灰度级的方法在图像中分割出目标区域与背景区域,这种方法称为灰度阈值分割方法。

在物体与背景有较强的对比度的图像中,此种方法应用特别有效。比如说物体内部灰度分布均匀一致,背景在另一个灰度级上也分布均匀,这时利用阈值可以将目标与背景分割得很好。如果目标和背景的差别是某些其他特征而不是灰度特征时,那么先将这些特征差别转化为灰度差别,然后再应用阈值分割方法进行处理,这样使用阈值分割技术也可能是有效的

设图像为f(x,y),其灰度集范围是[0,L],在0和L 之间选择一个合适的灰度阈值T ,则图像分割方法可由式(2.1)描述

(2.1) 这样得到的g(x,y)是一幅二值图像。

2.3图像局部区域填充基本原理

2.3.1基本选择方法

多边形选择方法:用roipoly 函数设定图像中的多边形区域,该函数返回与输入图像大小一致的二值图像BW ,选中的区域值为1,其余的部分值为0.其语法格式为:

BW=roipoly (I ,c,r )

其功能是:用向量c.r 指定多边形各角点的X.Y 轴的坐标。

2.3.2特定区域填充

MATLAB 图像处理工具箱中提供的roifill 函数[6]对于特定区域进行填充,其语法格式为:

J=roifill (I,c,r )

其功能是:填充由向量c.r 指定的多边形,c 和r 分别为多边形各顶点的X.Y 坐标。它是通过解边界的拉普拉斯方程,利用多边形边界的点的灰度平滑的插值得到T y x f T

y x f y x g ≥<),(),(10){,(

多边形内部的点。通常可以利用指定区域的填充来‘擦’掉图像中的小块区域。3设计程序

%QR二维码图像的阈值处理与区域填充

clear,clc

%图像预处理

I=imread('QR.jpg'); %原始图像

I0=imrotate(I,-0.4,'bilinear','crop'); %旋转后图像

X=imcrop(I0,[48 78 648 644]); %裁剪后图像

whos I

whos X

X1=rgb2gray(X); %灰度图像

X2=histeq(X1);

%X2=imadjust(X1,stretchlim(X1),[0 1]); %增强后图像

subplot(221),imshow(X1),title('灰度图像')

subplot(222),imshow(X2),title('增强后图像')

subplot(223),imhist(X1),title('灰度图像直方图')

subplot(224),imhist(X2),title('增强后图像直方图')

%阈值分割法二值化图像

w=fspecial('average',5); %滤波参数

f=imfilter(X2,w,'replicate'); %在二值化前对图像进行平滑滤波

X3=im2bw(f,graythresh(X2)); %全局阈值处理得到二值图像%区域填充预处理QR二维码

%填充后的二值图像

figure(2)

相关主题
文本预览
相关文档 最新文档