第八章 二值图像知识讲解
- 格式:ppt
- 大小:1.40 MB
- 文档页数:49
第三章 二值图像分析一幅数字图像是一个二维阵列,阵列元素值称为灰度值或强度值.实际上,图像在量化成数字图像前是一个连续强度函数的集合,场景信息就包含在这些强度值中.图像强度通常被量化成256个不同灰度级,对某些应用来说,也常有32、64、128或512个灰度级的情况,在医疗领域里甚至使用高达4096(12bits)个灰度级.很明显,灰度级越高,图像质量越好,但所需的内存也越大.在机器视觉研究的早期,由于内存和计算能力非常有限,而且十分昂贵,因此视觉研究人员把精力主要集中在研究输入图像仅包含两个灰度值的二值视觉系统上.人们注意到,人类视觉在理解仅由两个灰度级组成的线条、轮廓影像或其它图像时没有任何困难,而且应用场合很多,这一点对研究二值视觉系统的研究人员是一个极大的鼓舞.随着计算机计算能力的不断增强和计算成本的不断下降,人们普遍开始研究基于灰度图像、彩色图像和深度图像的视觉系统.尽管如此,二值视觉系统还是十分有用的,其原因如下:⑴ 计算二值图像特性的算法非常简单,容易理解和实现,并且计算速度很快.⑵ 二值视觉所需的内存小,对计算设备要求低.工作在256个灰度级的视觉系统所需内存是工作在相同大小二值图像视觉系统所需内存的八倍.如若利用游程长度编码等技术(见3.4节)还可使所需内存进一步减少.由于二值图像中的许多运算是逻辑运算而不是算术运算,所以所需的处理时间很短.(3)许多二值视觉系统技术也可以用于灰度图像视觉系统上.在灰度或彩色图像中,表示一个目标或物体的一种简易方法就是使用物体模板(mask),物体模板就是一幅二值图像,其中1表示目标上的点,0表示其它点.在物体从背景中分离出来后,为了进行决策,还需要求取物体的几何和拓扑特性,这些特性可以从它的二值图像计算出来.因此,尽管我们是在二值图像上讨论这些方法,但它们的应用并不限于二值图像.一般来说,当物体轮廓足以用来识别物体且周围环境可以适当地控制时,二值视觉系统是非常有用的.当使用特殊的照明技术和背景并且场景中只有少数物体时,物体可以很容易地从背景中分离出来,并可得到较好的轮廓,比如,许多工业场合都属于这种情况.二值视觉系统的输入一般是灰度图像,通常使用阈值法首先将图像变成二值图像,以便把物体从背景中分离出来,其中的阈值取决于照明条件和物体的反射特性.二值图像可用来计算特定任务中物体的几何和拓扑特性,在许多应用中,这种特性对识别物体来说是足够的.二值视觉系统已经在光学字符识别、染色体分析和工业零件的识别中得到了广泛应用.在下面的讨论中,假定二值图像大小为n m ⨯,其中物体像素值为1,背景像素值为0.3.1 阈值视觉系统中的一个重要问题是从图像中识别代表物体的区域(或子图像),这种对人来说是件非常容易的事,对计算机来说却是令人吃惊的困难.为了将物体区域同图像其它区域分离出来,需要首先对图像进行分割.把图像划分成区域的过程称为分割,即把图像],[j i F 划分成区域k p p p ,,,21⋅⋅⋅,使得每一个区域对应一个候选的物体.下面给出分割的严格定义.定义 分割是把像素聚合成区域的过程,使得:● ==i k i P 1 整幅图像 (}{i P 是一个完备分割 ). ● j i P P j i ≠∅=, ,(}{i P 是一个完备分割).● 每个区域i P 满足一个谓词,即区域内的所有点有某种共同的性质.● 不同区域的图像,不满足这一谓词.正如上面所表明的,分割满足一个谓词,这一谓词可能是简单的,如分割灰度图像时用的均匀灰度分布、相同纹理等谓词,但在大多数应用场合,谓词十分复杂.在图像理解过程中,分割是一个非常重要的步骤. 二值图像可以通过适当地分割灰度图像得到.如果物体的灰度值落在某一区间内,并且背景的灰度值在这一区间之外,则可以通过阈值运算得到物体的二值图像,即把区间内的点置成1,区间外的点置成0.对于二值视觉,分割和阈值化是同义的.阈值化可以通过软件来实现,也可以通过硬件直接完成.通过阈值运算是否可以有效地进行图像分割,取决于物体和背景之间是否有足够的对比度.设一幅灰度图像],[j i F 中物体的灰度分布在区间],[21T T 内,经过阈值运算后的图像为二值图像],[j i F T ,即:⎩⎨⎧≤≤=其它如果0],[ 1],[21T j i F T j i F T (3.1) 如果物体灰度值分布在几个不相邻区间内时,阈值化方案可表示为: ⎩⎨⎧∈=其它如果0],[ 1],[Z j i F j i F T (3.2) 其中Z 是组成物体各部分灰度值的集合.图3.1是对一幅灰度图像使用不同阈值得到的二值图像输出结果. 阈值算法与应用领域密切相关.事实上,某一阈值运算常常是为某一应用专门设计的,在其它应用领域可能无法工作.阈值选择常常是基于在某一应用领域获取的先验知识,因此在某些场合下,前几轮运算通常采用交互式方式来分析图像,以便确定合适的阈值.但是,在机器视觉系统中,由于视觉系统的自主性能(autonomy )要求,必须进行自动阈值选择.现在已经研究出许多利用图像灰度分布和有关的物体知识来自动选择适当阈值的技术.其中的一些方法将在3.2节介绍.图3.1 一幅灰度图像和使用不同阈值得到的二值图像结果.上左:原始灰度图像,上右:阈值T=100;左下:T=128.右下:T1=100|T2=128. 3.2 几何特性通过阈值化方法从图像中检测出物体后,下一步就要对物体进行识别和定位.在大多数工业应用中,摄像机的位置和环境是已知的,因此通过简单的几何知识就可以从物体的二维图像确定出物体的三维位置.在大多数应用中,物体的数量不是很多,如果物体的尺寸和形状完全不同,则可以利用尺度和形状特征来识别这些物体.实际上在许多工业应用中,经常使用区域的一些简单特征,如大小、位置和方向,来确定物体的位置并识别它们.3.2.1 尺寸和位置一幅二值图像区域的面积(或零阶矩)由下式给出:∑∑-=-==1010],[n i m j j i B A (3.3)在许多应用中,物体的位置起着十分重要的作用.工业应用中,物体通常出现在已知表面(如工作台面)上,而且摄像机相对台面的位置也是已知的.在这种情况下,图像中的物体位置决定了它的空间位置.确定物体位置的方法有许多,比如用物体的外接矩形、物体矩心(区域中心)等来表示物体的位置.区域中心是通过对图像进行“全局”运算得到的一个点,因此它对图像中的噪声相对来说是不敏感的.对于二值图像,物体的中心位置与物体的质心相同,因此可以使用下式求物体的中心位置:∑∑∑∑∑∑∑∑-=-=-=-=-=-=-=-=-==1010101010101010],[],[],[],[n i n i m j m j n i m j n i m j j i iB j i B y j i jB j i B x (3.4)其中x 和y 是区域相对于左上角图像的中心坐标.物体的位置为:Aj i iB y A j i jB x n i m j n i m j ∑∑∑∑-=-=-=-=-==10101010],[],[ (3.5)这些是一阶矩.注意,由于约定y 轴向上,因此方程3.4和3.5的第二个式子的等号右边加了负号.3.2.2 方向计算物体的方向比计算它的位置稍微复杂一点.某些形状(如圆)的方向不是唯一的,为了定义唯一的方向,一般假定物体是长形的,其长轴方向被定义为物体的方向.通常,二维平面上与最小惯量轴同方向的最小二阶矩轴被定为长轴.图像中物体的二阶矩轴是这样一条线,物体上的全部点到该线的距离平方和最小.给出一幅二值图像],[j i B ,计算物体点到直线的最小二乘方拟合,使所有物体点到直线的距离平方和最小:χ220101==-=-∑∑r B i j ij j m i n [,] (3.6)其中r ij 是物体点],[j i 到直线的距离.为了避免直线处于近似垂直时所出现的数值病态问题,人们一般把直线表示成极坐标形式:θθρsin cos y x += (3.7)如图3.2所示,θ是直线的法线与x 轴的夹角,ρ是直线到原点的距离.把点),(j i 坐标代入直线的极坐标方程得出距离r :22)sin cos (ρθθ-+=y x r (3.8)图3.2 直线的极坐标表示将方程3.8代入方程3.6并求极小化问题,可以确定参数ρ和θ:∑∑-=-=-+=101022],[)sin cos (n i m j ij ij j i B y x ρθθχ (3.9) 令2χ对ρ的导数等于零求解ρ得:)sin cos (θθρy x += (3.10) 它说明回归直线通过物体中心),(y x .用这一ρ值代入上面的2χ,则极小化问题变为:θθθθχ222sin cos sin cos c b a ++= (3.11)其中的参数:],[)(],[))((2],[)(10210101010102j i B y y c j i B y y x x b j i B x x a n i m j ij n i m j ij ij n i m j ij ∑∑∑∑∑∑-=-=-=-=-=-=-=--=-= (3.12)是二阶矩.表达式2χ可重写为:θθχ2sin 212cos )(21)(212b c a c a +-++=(3.13) 对2χ微分,并置微分结果为零,求解 值:ca b -=θ2tan (3.14) 因此,惯性轴的方向由下式给出: 2222)(2cos )(2sin c a b ca c ab b -+-±=-+±=θθ (3.15) 所以由2χ的最小值可以确定方向轴.注意,如果c a b ==,0,那么物体就不会只有唯一的方向轴.物体的伸长率E 是2χ的最大值与最小值之比:m inm ax χχ=E (3.16) 3.2.3 密集度和体态比区域的密集度(compact )可用下面的式子来度量:2pA C = (3.17) 其中,p 和A 分别为图形的周长和面积.根据这一衡量标准,圆是最密集的图形,其密集密度为最大值π4/1,其它一些图形的比值要小一些.让我们来看一下圆,当圆后仰时,形状成了一椭圆,面积减小了而周长却不象面积减小的那么快,因此密集度降低了.在后仰到极限角时,椭圆被压缩成了一条无限长直线,椭圆的周长为无穷大,故密集度变成了零.对于数字图像, 2p A 是指物体尺寸(像素点数量)除以边界长度的平方.这是一种很好的散布性或密集性度量方法.这一比值在许多应用中被用作为区域的一个特征.密集度的另一层意义是:在给定周长的条件下,密集度越高,围成的面积就越大.注意在等周长的情况下,正方形密集度大于长方形密集度.体态比定义为区域的最小外接矩形的长与宽之比,正方形和圆的体态比等于1,细长形物体的体态比大于1.图3.3所示的是几种形状的外接矩形.图3。
图像二值化的原理
图像二值化是将彩色或灰度图像转换为只包含两种颜色(通常是黑色和白色)的二值图像的过程。
其原理是通过设定一个阈值,将图像中的像素点的灰度值与阈值进行比较,大于阈值的像素点设置为白色,小于阈值的像素点设置为黑色。
具体的步骤如下:
1. 选择一个合适的阈值。
阈值通常由用户根据具体情况来确定,可以是固定值,也可以是根据图像的灰度直方图或统计分析得出的动态阈值。
2. 遍历图像的每个像素点,将其灰度值与阈值进行比较。
3. 如果像素点的灰度值大于阈值,则将其设置为白色(通常用最大强度值表示,如255)。
4. 如果像素点的灰度值小于等于阈值,则将其设置为黑色(通常用最小强度值表示,如0)。
5. 继续遍历所有像素点,直到处理完所有像素点。
通过二值化,可以突出图像中的目标区域,并且减少图像中的细节和噪声,从而便于进行后续的图像处理和分析。
二值形态学的基本图像处理实验目的:掌握图像形态学上的基本运算和图像显示的基本原理实验要求:将给定图像先进行二值化,然后将二值化后的图像进行膨胀、腐蚀、膨胀后腐蚀、腐蚀后膨胀的各项操作;并用形态学上的方法填充图像中的空洞。
形态学的概述:形态学是一门新兴科学,它的用途主要是获取物体拓扑和结果信息,它通过物体和结构元素相互作用的某些运算,得到物体更本质的形态。
它在图像处理中的应用主要是:1.利用形态学的基本运算,对图像进行观察和处理,从而达到改善图像质量的目的;2.描述和定义图像的各种几何参数和特征,如面积,周长,连通度,颗粒度,骨架和方向性。
二值图象原理:二值图像是一种简单的图像格式,它只有两个灰度级,即"0"表示黑色的像素点,"255"表示白色的像素点,至于如何从一幅普通的图像获得二值图像,二值图像处理在图像处理领域占据很重要的位置,在具体的图像处理应用系统中,往往需要对于获得的二值图像再进一步进行处理,以有利于后期的识别工作。
二值图像处理运算是从数学形态学下的集合论方法发展起来的,尽管它的基本运算很简单,但是却可以产生复杂的效果。
常用的二值图像处理操作有许多方法,如腐蚀、膨胀、细化、开运算和闭运算等等。
腐蚀和膨胀原理:二值图像基本的形态学运算是腐蚀和膨胀,简单的腐蚀是消除物体的所有边界点的一种过程,其结果是使剩下的物体沿其周边比原物体小一个像素的面积。
如果物体是圆的,它的直径在每次腐蚀后将减少两个像素,如果物体在某一点处任意方向上连通的像素小于三个,那么该物体经过一次腐蚀后将在该点处分裂为二个物体。
简单的膨胀运算是将与某物体接触的所有背景点合并到该物体中的过程。
过程的结果是使物体的面积增大了相应数量的点,如果物体是圆的,它的直径在每次膨胀后将增大两个像素。
如果两个物体在某一点的任意方向相隔少于三个像素,它们将在该点连通起来。
腐蚀可以消除图像中小的噪声区域,膨胀可以填补物体中的空洞。
⼆值图像的⼏何性质⼆值图像 b(x,y) = 1 表⽰前景部分,b(x,y) = 0 表⽰背景部分。
其基本⼏何特性包括:‘1 ⾯积对整个图像区域进⾏积分,使⽤零阶矩表⽰为。
2 位置将图像区域看作⼀种均匀物质构成得平⾯,物体得质⼼即为区域中⼼;使⽤⼀阶矩表⽰如下:,,进⼀步改写得:,。
3 朝向假设物体沿某⼀⽅向⽐较长,其正交⽅向⽐较短,该⽅向定义为物体朝向。
使⽤最⼩转动惯量来定义物体长轴,即寻找⼀条直线,使得物体上所有点到直线上距离平⽅和最⼩,定义如下:, r 表⽰物体上点到直线的最⼩距离。
通过最⼩化 E,可以计算出物体朝向直线,具体如下:1)假设⼆值图像朝向直线已知,使⽤定义为,如下图:如上图所⽰,由于,可以建⽴等式,化简得。
2)对直线 L 上任意点,以点作为参考点,建⽴参数⽅程如下:,s 表⽰点距离参考点的距离。
3)由于,(x,y) 表⽰图像上的点,表⽰直线上的点,将参数⽅程带⼊该等式,使得两个变量简化为⼀个变量 s,如下:,,对 s 求导,当导数为零时表⽰(x,y)到直线 L 上距离最近,计算得,将 s 带⼊得,,最终推导出转动惯量⽅程为,其中,为待求解直线参数。
4)令,,将⽆关变量提出积分符号前,同时除以得,由于为图像中⼼,则最⼩转动惯量对应得轴过图像中⼼。
5)通过 4)结论,直线 L 的确定可转换为对选择⾓度的求解,具体如下:令,将图像上点绝对坐标转换为相对于图像中⼼的相对坐标,带⼊直线 L ⽅程得:,重新改写,当前 E 仅包含未知量,再次改写,其中,,,使⽤倍⾓公式,,,通过以上分析,⼆值图像朝向直线为经过中⼼点,且满⾜的直线,其中,a, b, c 为图像⼆阶矩。
4 形状在分析⼆值图像朝向时,,该⽅程是关于的⼆次⽅程,其系数 a, b, c 为可构成⼀个 2*2 矩阵,通过分析该矩阵的特征值与特征向量可以估计出⼆值图像的形状,具体如下:,通过分析特征值与特征向量,可的如下结论:1)较⼤特征值对应的特征向量⽅向即为⼆值图像朝向;2)两个特征值相差越⼩,⼆值图像越接近圆形。
二值图象显示--图案法图案法(patterning)是指灰度可以用一定比例的黑白点组成的区域表示,从而达到整体图象的灰度感。
黑白点的位置选择称为图案化。
在具体介绍图案法之前,先介绍一下分辨率的概念。
计算机显示器,打印机,扫描仪等设备的一个重要指标就是分辨率,单位是dpi(dot per inch),即每英寸点数,点数越多,分辨率就越高,图象就越清晰。
让我们来计算一下,计算机显示器的分辨率有多高。
设显示器为15英寸(指对角线长度),最多显示1280×1024个点。
因为宽高比为4:3,所以宽有12英寸,高有9英寸,则该显示器的水平分辨率为106dpi,垂直分辨率为113.8dpi。
一般的激光打印机的分辨率有300dpi×300dpi,600dpi×600dpi,720dpi×720dpi。
所以打出来的图象要比计算机显示出来的清晰的多。
扫描仪的分辨率要高一些,数码相机的分辨率更高。
言归正传,前面讲了,图案化使用图案来表示象素的灰度,那么我们来做一道计算题。
假设有一幅240×180×8bit的灰度图,当用分辨率为300dpi×300dpi的激光打印机将其打印到12.8×9.6英寸的纸上时,每个象素的图案有多大?这道题很简单,这张纸最多可以打(300×12.8) ×(300×9.6)=3840×2880个点,所以每个象素可以用(3840/240)×(2880/180)=16×16个点大小的图案来表示,即一个象素256个点。
如果这16×16的方块中一个黑点也没有,就可以表示灰度256;有一个黑点,就表示灰度255;依次类推,当都是黑点时,表示灰度0。
这样,16×16的方块可以表示257级灰度,比要求的8bit共256级灰度还多了一个。
所以上面的那幅图的灰度级别完全能够打印出来。