《图像的合成》PPT课件.ppt_第1页
《图像的合成》PPT课件.ppt_第2页
《图像的合成》PPT课件.ppt_第3页
《图像的合成》PPT课件.ppt_第4页
《图像的合成》PPT课件.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第10章图像的合成,本章要点:图像的差影法图像的逻辑运算,10.1图像的差影法,本小节介绍:图像的差影法基本理论图像加运算图像减运算,10.1.1图像的差影法基本理论,差影法实际是对图像进行代数运算的一种不同的叫法。代数运算是指对两幅输入图像进行点对点的加、减、乘、除计算而得到输出图像的运算。图像相加的一个重要应用就是对同一场景的多幅图像求平均值,它可以有效地降低随机噪声的影响。这是因为对于一幅有噪声的图像S(x,y),可以看成是由原始无噪声的图像F(x,y)和噪声G(x,y)叠加而成的,即S(x,y)=G(x,y)+F(x,y),如果叠加在图像上的噪声G(x,y)是非相关、具有零均值的随机噪声时,那么,把针对同一目标物在相同条件下,做M次重复摄取的图像相加,取平均值作为输出图像,即:,图像相减:可用于去除一幅图像中所不需要的图案,也可以用于检测同一场景的两幅图之间的变化,例如检测物体运动。作用:对于同一场景的两幅图S(x,y)、F(x,y),因为是同一场景,所以目标图像的背景是大致相同的,当两幅图进行相减时,相同位置的背景点因为灰度值相同,结果变成了黑点,而目标图像因为位置不同,所以相减后值不为0,处理后的图像就只在两个目标图像的位置有像素点,背景变为全黑。此时,我们计算两个目标之间的距离就非常简单了,这也就达到了检测物体运动的目的。,乘法和除法在数字图像处理中一般应用得不多,但它们的用途也很重要。数字化对一幅图像各点的敏感程度可能有变化,乘和除运算有可能纠正这种影响。除运算可产生对颜色和多光谱图像分析十分重要的比率图像,而用一幅图像乘某一图像可以遮住该图像中的某些部分,仅留下感兴趣的物体。,10.1.2图像加运算,1.理论基础加运算为什么能消减噪声?假定同一目标物在相同条件下,做M次重复摄取的图像S(x,y),其中含有的噪声G(x,y)是非相关、具有零均值的随机噪声,那么图像S(x,y)可以看成是由原始无噪声的图像F(x,y)和噪声G(x,y)叠加而成的,即S(x,y)=G(x,y)+F(x,y),实现步骤(1)获取第一幅图的首地址,及图像的高和宽。(2)开辟一块内存缓冲区,并初始化为255。(3)选取进行加运算的第二幅图并获取第二幅图的首地址,及图像的高和宽。(4)将两幅图的对应像素点进行加运算,结果大于255,则置为255,不大于将结果保存下来。(5)将内存中的结果复制回第一幅图的数据区。,3.编程代码,for(j=1;j255)*lpDst=255;else*lpDst=(*lpSrc+*lpSrcBK);,4.处理效果图(a)原图(b)背景(c)相加效果图,10.1.3图像减运算,1.理论基础减运算的目的:为了从图像中去除不需要的图像,只保留所关心的图像。比如医生想观察药物在人身体中的流动情况,但是由于脊椎等的影响,图像很模糊,为了获得清晰的图像,我们可以先获得一张病人未吃药的图像,用带有药物的图像减去没有药物的图像,因为是一个人的影像,所以脊椎等干扰图像是相同的,减处理后,就只剩下药物的影像了。利用这种原理,也可以用来识别物体在特定区域的运动情况。,2.实现步骤(1)获取需要提取图像的数据首地址,及图像的高和宽。(2)开辟一块内存缓冲区,初始化为255。(3)选择背景图像,并获取其首地址,及图像的高和宽。(4)用第一幅图像的每一个像素点的灰度值减去背景图像的相应像素的灰度值,结果小于0,则该点置为0,不小于0,则保存在缓冲区中。(5)将内存中的结果复制回第一幅图的数据区。,3.编程代码,/进行每个像素的减运算for(j=1;jheight-1;j+)for(i=1;iwide-1;i+)/获得原像素指针lpSrc=p_data+wide*j+i;/获得目标像素指针lpDst=temp+wide*j+i;/获得背景像素指针lpSrcBK=p_dataBK+wide*j+i;/进行减运算if(*lpSrc-*lpSrcBK)0)*lpDst=0;else*lpDst=(*lpSrc-*lpSrcBK);,4.处理效果图(a)原图(b)背景(c)相减效果图,10.2图像的逻辑运算,本节介绍六种运算是用来处理两幅二值图:与运算或运算非运算或非运算与非运算异或运算,10.2.1与运算,1.实现步骤(1)把二值图像转化为0、1值;(2)循环两幅图像的像素点;(3)像素点相与;(4)把0、1值转化为二值图像数据,为0的像素置0,为1的像素置255。,2.编程代码,/对原图二值化for(j=0;j128)temp1wide*j+i=1;,/对背景二值化for(j=0;j128)temp2wide*j+i=1;,/进行每个像素的与运算for(j=1;jheight-1;j+)for(i=1;iwide-1;i+)if(temp2wide*j+i=1,3.处理效果图(a)原图(b)背景(c)与运算效果图,10.2.2或运算,1.实现步骤(1)把二值图像转化为0、1值;(2)循环两幅图像的像素点;(3)两像素点同时为0置0,否则置1;(4)把0、1值转化为二值图像数据,为0的像素置0,为1的像素置255。,2.编程代码,/对原图二值化for(j=0;j128)temp1wide*j+i=1;,/对背景二值化for(j=0;j128)temp2wide*j+i=1;,/进行每个像素的或运算for(j=1;jheight-1;j+)for(i=1;iwide-1;i+)if(temp2wide*j+i=0,处理效果图(a)原图(b)背景(c)或运算效果图,10.2.3非运算,1.实现步骤(1)把二值图像转化为0、1值;(2)循环两幅图像的像素点;(3)像素点值为1置0,为0置1;(4)把0、1值转化为二值图像数据,为0的像素置0,为1的像素置255。,2.编程代码,/对原图二值化for(j=0;j128)p_temp1wide*j+i=1;,/进行每个像素的非运算for(j=1;jheight-1;j+)for(i=1;iwide-1;i+)if(p_temp1wide*j+i=0)p_temp1wide*j+i=255;elsep_temp1wide*j+i=0;,3.处理效果图(a)原图(b)非运算效果图,10.2.4或非运算,1.实现步骤(1)把二值图像转化为0、1值;(2)循环两幅图像的像素点;(3)两像素点同时为0置1,否则置0;(4)把0、1值转化为二值图像数据,为0的像素置0,为1的像素置255。,2.编程代码,/对背景二值化for(j=0;j128)temp2wide*j+i=1;,/进行每个像素的与运算for(j=1;jheight-1;j+)for(i=1;iwide-1;i+)if(temp2wide*j+i=0,3.处理效果图(a)原图(b)背景(c)或非运算效果图,10.2.5与非运算,1.实现步骤(1)把二值图像转化为0、1值;(2)循环两幅图像的像素点;(3)两像素点同时为1置0,否则置1;(4)把0、1值转化为二值图像数据,为0的像素置0,为1的像素置255。,2.编程代码,/对原图二值化for(j=0;j128)temp1wide*j+i=1;,/对背景二值化for(j=0;j128)temp2wide*j+i=1;,/进行每个像素的与非运算for(j=1;jheight-1;j+)for(i=1;iwide-1;i+)if(temp2wide*j+i=1,3效果图(a)原图(b)背景(c)与非运算效果图,10.2.6异或运算,1.实现步骤(1)把二值图像转化为0、1值;(2)循环两幅图像的像素点;(3)两像素点相同置0,不同置1;(4)把0、1值转化为二值图像数据,为0的像素置0,为1的像素置255。,2.编程代码,/对原图二值化for(j=0;j128)temp1wide*j+i=1;,/对背景二值化for(j=0;j128)temp2wide*j+i=1;,/进行每个像素的异或运算for(j=1;jheight-1;j+)for(i=1;iwide-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论