灰图像处理学习教案.pptx
《灰图像处理学习教案.pptx》由会员分享,可在线阅读,更多相关《灰图像处理学习教案.pptx(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1灰图像处理灰图像处理(t xin ch l)第一页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t(t xin)xin)1 1、分量、分量(fn ling)(fn ling)法法 2 2、最大值法、最大值法3 3、平均值法、平均值法4 4、加权平均法、加权平均法第1页/共94页第二页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t xin)(t xin)GetPixelGetPixel函数功能:该函数检索函数功能:该函数检索(jin su)(jin su)指定坐标点的像素的指定坐标点的像素的
2、RGBRGB颜色值。颜色值。函数原型:函数原型:COLORREF GetPixel(HDC hdc,int nXPos,int nYPos)COLORREF GetPixel(HDC hdc,int nXPos,int nYPos)参数:参数:hdc hdc:设备环境句柄。:设备环境句柄。nXPos nXPos:指定要检查的像素点的逻辑:指定要检查的像素点的逻辑X X轴坐标。轴坐标。nYPos nYPos:指定要检查的像素点的逻辑:指定要检查的像素点的逻辑Y Y轴坐标。轴坐标。返回值:返回值是该象像点的返回值:返回值是该象像点的RGBRGB值。值。声明声明(shngmng)方法:方法:Priv
3、ate Declare Function GetPixel Lib gdi32(ByVal hdc As Long,ByVal x As Long,ByVal Y As Long)As Long第2页/共94页第三页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t xin)(t xin)SetPixelSetPixel函数功能:该函数将指定坐标处的像素设为指定的颜色。函数功能:该函数将指定坐标处的像素设为指定的颜色。函数原型:函数原型:COLORREF SetPixel(HDC hdc,int X,int Y,COLORREF crColor)C
4、OLORREF SetPixel(HDC hdc,int X,int Y,COLORREF crColor);参数参数:hdchdc:设备环境句柄。:设备环境句柄。X X:指定要设置的点的:指定要设置的点的X X轴坐标,按逻辑单位表示坐标。轴坐标,按逻辑单位表示坐标。Y Y:指定要设置的点的:指定要设置的点的Y Y轴坐标,按逻辑单位表示坐标。轴坐标,按逻辑单位表示坐标。crColorcrColor:指定要用来绘制该点的颜色。:指定要用来绘制该点的颜色。返回值:如果函数执行成功,那么返回值就是函数设置像素的返回值:如果函数执行成功,那么返回值就是函数设置像素的RGBRGB颜色值。这颜色值。这个值
5、可能与个值可能与crColorcrColor指定的颜色有所不同,之所以有时指定的颜色有所不同,之所以有时(yush)(yush)发生这种情况是因发生这种情况是因为没有找到对指定颜色进行真正匹配造成的;如果函数失败,那么返回值是为没有找到对指定颜色进行真正匹配造成的;如果函数失败,那么返回值是-1-1。声明声明(shngmng)方法:方法:Private Declare Function SetPixelV Lib gdi32(ByVal hdc As Long,ByVal x As Long,ByVal Y As Long,ByVal crColor As Long)As Long第3页/共9
6、4页第四页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t xin)(t xin)1 1、分量、分量(fn ling)(fn ling)法(法(R R分量分量(fn ling)(fn ling)法)法)Private Sub Command2_Click()Picture1.Picture=Picture2.Picture w=Picture1.ScaleWidth h=Picture1.ScaleHeight For i=0 To w-1 For j=0 To h-1 rgb=GetPixel(Picture1.hdc,i,j)Red=rgb
7、mod 256 获得获得(hud)红色值红色值 Green=rgb 256 mod 256 获得获得(hud)绿色值绿色值 Blue=rgb65536 获得获得(hud)兰色值兰色值 取取R分量作为灰度分量作为灰度 rgb=RGB(Red,Red,Red)SetPixelV Picture2.hdc,i,j,rgb Next j Next iPicture2.Picture=Picture2.ImageEnd Sub第4页/共94页第五页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t xin)(t xin)2 2、最大值法、最大值法Privat
8、e Sub Command3_Click()w=Picture1.ScaleWidth h=Picture1.ScaleHeight For i=0 To w-1 For j=0 To h-1 rgb1=GetPixel(Picture1.hdc,i,j)Red=rgb1 Mod 256 获得红色值获得红色值 Green=rgb1 256 Mod 256 获得绿色值获得绿色值 Blue=rgb1 65536 获得兰色值获得兰色值 取取R、G、B分量分量(fn ling)最大值作为灰度最大值作为灰度 If Red Green And Red Blue Then Col=Red If Green
9、Red And Green Blue Then Col=Green If Blue Red And Blue Green Then Col=Blue rgb1=RGB(Col,Col,Col)SetPixelV Picture2.hdc,i,j,rgb1 Next j Next iPicture2.Picture=Picture2.ImageEnd Sub第5页/共94页第六页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t xin)(t xin)3 3、平均值法、平均值法Private Sub Command4_Click()Picture1.
10、Picture=Picture2.Picture w=Picture1.ScaleWidth h=Picture1.ScaleHeight For i=0 To w-1 For j=0 To h-1 rgb1=GetPixel(Picture1.hdc,i,j)Red=rgb1 Mod 256 获得获得(hud)红色值红色值 Green=rgb1 256 Mod 256 获得获得(hud)绿色值绿色值 Blue=rgb1 65536 获得获得(hud)兰色值兰色值 取取R、G、B三分量平均值作为灰度三分量平均值作为灰度 col=(Red+Green+Blue)/3 rgb1=RGB(col,c
11、ol,col)SetPixelV Picture2.hdc,i,j,rgb1 Next j Next iPicture2.Picture=Picture2.ImageEnd Sub第6页/共94页第七页,共95页。4.1 4.1 彩色图像彩色图像(t xin)(t xin)转灰度图像转灰度图像(t(t xin)xin)4 4、加权平均法、加权平均法Private Sub Command5_Click()Picture1.Picture=Picture2.Picture w=Picture1.ScaleWidth h=Picture1.ScaleHeightFor i=0 To w-1 For
12、j=0 To h-1 rgb1=GetPixel(Picture1.hdc,i,j)Blue=rgb1 mod 256 获得兰色值获得兰色值 Red=rgb1256 mod 256 获得红色值获得红色值 Green=rgb1 65536 获得绿色获得绿色(l s)值值 将三原色取其权值转换为灰度将三原色取其权值转换为灰度 Y=(9798*Red+19235*Green+3735*Blue)32768 将灰度转换为将灰度转换为RGB rgb1=RGB(Y,Y,Y)SetPixelV picture2.hdc,i,j,rgb1 Next j Next iPicture2.Picture=Pictu
13、re2.ImageEnd Sub第7页/共94页第八页,共95页。4.2 4.2 直直 方方 图图 直方图的基本概念直方图的基本概念 灰度直方图表示灰度直方图表示(biosh)(biosh)图像中具有某种灰度级的像素的个数。图像中具有某种灰度级的像素的个数。6646313266416665436646611223466543211524354652614第8页/共94页第九页,共95页。直方图的性质直方图的性质(xngzh)(xngzh)(3 3)图图像像(t(t xin)xin)各各子子区区的的直直方方图图之之和和就就等等于于该该图图像像(t(t xin)xin)全图的直方图。全图的直方图。
14、(1 1)只含图像只含图像(t xin)(t xin)各灰度值像素出现的概率,而无位置信息。各灰度值像素出现的概率,而无位置信息。(2 2)图像图像(t xin)(t xin)与直方图之间是多对一的映射关系。与直方图之间是多对一的映射关系。第9页/共94页第十页,共95页。在离散在离散(lsn)(lsn)形式下形式下,灰度直方图的计算如下:灰度直方图的计算如下:在坐标在坐标(zubio)(zubio)中做出中做出rkrk与与pr(rk)pr(rk)的关系图形,即为该图像的直方图。的关系图形,即为该图像的直方图。rkrk代表代表(dibio)(dibio)离散离散灰度级灰度级p pr r(r r
15、k k)代表概代表概率密度函数率密度函数,表示原始图像表示原始图像的灰度分布的灰度分布n nk k为图像中出现为图像中出现r rk k级灰度的像素数级灰度的像素数n n是图像像素总数是图像像素总数直方图的计算与简单绘制直方图的计算与简单绘制 第10页/共94页第十一页,共95页。LineLine方法:方法:object.Line(x1,y1)-(x2,y2)object.Line(x1,y1)-(x2,y2),RGB(Red,Green,Blue)RGB(Red,Green,Blue)(x1,y1)(x1,y1)是直线的起点坐标是直线的起点坐标(zubio)(zubio),若省略,若省略(x1
16、,y1)(x1,y1),则起点为当前坐,则起点为当前坐标标(zubio)(zubio)位置位置(CurrentX,CurrentY)(CurrentX,CurrentY)。(x2,y2)(x2,y2)是直线的终点坐标是直线的终点坐标(zubio)(zubio)。直方图程序设计直方图程序设计(chn x sh j)(chn x sh j)scalescale方法:方法:object.scale(x1,y1)-(x2,y2)object.scale(x1,y1)-(x2,y2)用于设定用于设定(sh dn)(sh dn)坐标系统。坐标系统。(x1,y1)(x1,y1)是坐标系统的左上角坐标,是坐标
17、系统的左上角坐标,(x2,y2)(x2,y2)是坐标系统的右下角坐标。是坐标系统的右下角坐标。设计一图像直方图程序设计一图像直方图程序第11页/共94页第十二页,共95页。一一幅幅(y(y f)f)给给定定图图像像的的灰灰度度级级分分布布在在0r10r1范范围围内内(灰灰度度级级进行了归一)。可以对进行了归一)。可以对0,10,1内的任一内的任一r r值进行变换值进行变换 s=T(r)s=T(r)变换函数变换函数T(r)T(r)应满足下列条件:应满足下列条件:(1 1)在在0r10r1区间内,区间内,T(r)T(r)值单调增加;值单调增加;(2 2)对于对于0r10r1,有有 0s1 0s1。
18、保证了图像保证了图像(t xin)(t xin)的灰度级从白到黑的次的灰度级从白到黑的次序不变序不变保证了映射变换后的保证了映射变换后的像素像素(xin s)(xin s)灰度灰度值在容许的范围内值在容许的范围内直方图的映射变换直方图的映射变换第12页/共94页第十三页,共95页。直直方方图图均均衡衡化化处处理理(chl)(chl)是是以以累累积积分分布布函函数数变变换换法法为为基基础础的的直方图修正法。变换函数为直方图修正法。变换函数为 式中:式中:是积分变量,而是积分变量,而 就是就是r r的累积分布函数。的累积分布函数。直方图均衡直方图均衡(jnhng)(jnhng)第13页/共94页第
19、十四页,共95页。当灰度级是离散当灰度级是离散(lsn)(lsn)值时:值时:其反变换其反变换(binhun)(binhun)式为式为 664631326641666543664661122346654321直方图均衡直方图均衡(jnhng)(jnhng)第14页/共94页第十五页,共95页。rknknk/nr5=1r1=1/5r2=2/5r3=3/5r4=4/5r0=014/364/365/366/362/365/36n5=14n1=4n2=5n3=6n4=2n0=51 2 3 4 5 6直方图均衡直方图均衡(jnhng)(jnhng)1 2 3 4 5 6第15页/共94页第十六页,共95
20、页。Matlab程序程序(chngx):clear all;close all;I=imread(pout.tif);subplot(2,2,1),imshow(I);title(原图像原图像);subplot(2,2,2),imhist(I);title(原图像的直方图原图像的直方图);J=histeq(I);%直方图均衡化直方图均衡化subplot(2,2,3),imshow(J);title(直方图均衡化后的图像直方图均衡化后的图像);subplot(2,2,4),imhist(J);title(均衡化后的图像的直方图均衡化后的图像的直方图)第16页/共94页第十七页,共95页。直方图均
21、衡直方图均衡(jnhng)(jnhng)第17页/共94页第十八页,共95页。4.3 4.3 灰灰 度度 变变 换换 灰度线性变换 原图像(t xin)f(x,y)的灰度范围为a,b,希望变换后图像(t xin)g(x,y)的灰度范围扩至c,d,则线性变换可表示为:第18页/共94页第十九页,共95页。2552550输入灰度输出灰度实例实例(shl)(shl):逆:逆反处理反处理For j=0 To h-1 For i=0 To w-1 g(i,j)=255-f(i,j)Next iNext j第19页/共94页第二十页,共95页。突出突出(t ch)(t ch)感兴趣的灰度区间。感兴趣的灰度
22、区间。常用的三段线性变换法其数学表达式如下:常用的三段线性变换法其数学表达式如下:分段分段(fn dun)(fn dun)线性变换线性变换 第20页/共94页第二十一页,共95页。利用利用MatlabMatlab进行进行(jnxng)(jnxng)图像灰度变换图像灰度变换第21页/共94页第二十二页,共95页。设计设计(shj)(shj)程序程序figure(1);i=imread(car.bmp);i=im2double(i);imshow(i);title(原图);figure(2);r=0:0.001:1;s=r0.35.*r*0.3+r=0.35.*(0.105+2.6333*(r-0
23、.35)+r0.65.*(1+0.3*(r-1);plot(r,s);title(变换公式(gngsh);figure(3);T1=i0.35.*i*0.3+i=0.35.*(0.105+2.6333*(i-0.35)+i0.65.*(1+0.3*(i-1);imshow(T1);title(变换后图像);imwrite(T1,car_T1.bmp,bmp);im2double函数:如果输入是函数:如果输入是 uint8,unit16,或者是二值的或者是二值的logical类型,则函类型,则函数数im2double 将其值归一化到将其值归一化到01之间。之间。如果输入本身如果输入本身(bnsh
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 处理 学习 教案
限制150内