资源描述:
《数字图像处理几何变换.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第五章数字图像处理中的基本运算本章主要内容和基本要求数字图像的基本代数运算数字图像的几何运算5.1数字图像处理基本运算的分类一、图像处理算法的分类:单幅图像————单幅图像多幅图像————单幅图像多幅图像或单幅图像————数值/符号(图像分析)二、根据基本运算分类点运算邻域运算5.2点运算一、数字图像的代数运算1、基本代数运算基础:设图像其运算可以分为图像自身的运算和图像间的运算,从根本上而言可以看成对图像位置的运算或对该位置上灰度级的运算。基本代数运算:图像象素几何位置不变图像灰度级的加、减、乘、除等运算。几何运算:图像象素位置变
2、换后,经过计算,确定该象素灰度的运算。例如图像f和g:代数运算就是二者点对点的加、减、乘、除运算。对f图所有灰度加c级灰度可作如下处理:J=f+c给整幅图像增加灰度级会使图像亮度得到提高整体偏亮,给个别象素加灰度值可以使目标景物突出,例如:给一幅图像乘以一个系数,可以改变图像的灰度级范围如:原来是20-200的灰度级范围,乘以2则有40-400的灰度级范围两幅连续的图像运算可以有基本运算组合而成如:K=af+bg:二、代数运算的用途可以对同一场景的多幅图像求平均,以降低加性零值平稳噪声。两幅图像叠加达到二次曝光的效果。减去图中不需要
3、的加性噪声。计算两幅场景的变化。检测轮廓,确定轮廓现。5.3图像的几何运算几何运算也叫几何变换:包括图象的平移,旋转,镜象变换,转置,放缩等。一.平移(translation)将图像沿水平或垂直方向移动位置后,获得新的图像的变换方式。例如:图像坐标中象素点(x0,y0)移动到(x1,y1)位置灰度不变。(x0,y0)点,经过平移(tx,ty),变为点(x1,y1)两点之间的关系为:x1=x0+tx;y1=y0+ty.以矩阵的形式表示为:我们更关心的是它的逆变换:因为:我们想知道的是平移后的图象中每个像素的颜色。x0=x1-tx,y0
4、=y1-ty例如:新图中左上角点的RGB值是多少?很显然,该点是原图中的某一点经过平移后得到的,这两点的颜色肯定是一样的,所以只要知道了原图那点的RGB值即可。那么到底新图中的左上角点对应原图中的哪一点呢?将左上角点的坐标(0,0)代入公式(2),得到x0=-tx;y0=-ty;所以新图中的(0,0)点的颜色和原图中(-tx,-ty)的一样。设用表示新图,用表示原图。在新图的坐标系中是左上角的象素,原图中的象素在新坐标系中的位置变成了f(-tx,-ty),新的坐标系中g(0,0)=f(-tx,-ty)。例如:平移后出现的问题1、如果
5、新图中有一点(x1,y1),按照公式(2)得到的(x0,y0)不在原图中该怎么办?通常的做法是,把该点的RGB值统一设成(0,0,0)或者(255,255,255)。2、平移后的图象是否要放大?一种做法是不放大,移出的部分被截断,如下图所示,图2为原图,图3为移动后的图。这种处理,文件大小不会改变。平移前的图平移后的图像还有一种做法是:将图象放大,使得能够显示下所有部分移动后被放大图像这种处理,文件大小要改变。设原图的宽和高分别是w1,h1则新图的宽和高变为w1+
6、tx
7、和h1+
8、ty
9、,加绝对值符号是因为tx,ty有可能为负.下面
10、给出Translation的源代码。算法的思想是先将所有区域填成白色,然后找平移后显示区域的左上角点(x0,y0)和右下角点(x1,y1)。分几种情况:先看x方向(width指图象的宽度)1.tx≤-width很显然,图象完全移出了屏幕,不用做任何处理2.-width11、tx
12、,对应原图的范围从
13、tx
14、到width图53.015、的范围从0到width-tx图64.tx≥width,图象完全移出了屏幕,不用做任何处理。y方向是对应的(height表示图象的高度1.ty≤-height,图象完全移出了屏幕,不用做任何处理2.-height16、ty
17、,对应原图的范围从
18、ty
19、到height3.020、用memcpy函数,从(x0,y0)点开始,一次可以拷贝一整行(宽度为x1-x0),然后将内存指针移到(x0,y0+1)处,拷贝下一行,这样拷贝(y1-y0)行就完成了全部操作,避免了一个一个像素的计算,提高了效率。二、旋转(rota