欢迎来到天天文库
浏览记录
ID:38695533
大小:198.50 KB
页数:7页
时间:2019-06-17
《图像的平滑与锐化和拉普拉斯模糊数字图像处理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、昆明理工大学(数字图像处理)实验报告实验名称图像的平滑与锐化和拉普拉斯模糊实验时间2013年4月15日专业班级学号姓名成绩教师评语:一、实验目的1.掌握图像平滑与锐化的基本原理。用C++编程实现图像的平滑与锐化。2.利用算法的调用来实现图像的平滑和锐化。二、实验原理1、二维中值滤波平滑:用中值算法把数字图像中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,这样来过滤噪声,实现平滑。但是,这样产生出来的图像会有一定的模糊。2、梯度算法锐化:用微分的方法对图像处理,锐化因为平滑导致的模糊。3
2、、拉普拉斯模糊:通过二阶微分把一个点的像素变得跟周围4个像素一样。4、去除拉普拉斯模糊:将拉普拉斯模糊形式从原图像中去除。三、实验内容1、选择一种平滑方式对图像进行平滑操作。1、选择一种锐化方法对图像进行锐化操作。2、分析图像的平滑与锐化的作用是什么。3、试分析各种方法的特点。四、实验步骤1.在之前实验的基础上对程序进行操作。2.在ClassView中选择添加成员函数mysort3.在FileView中找到建立的成员函数的函数名,编写代码。4.在ResourcesView中的Menu选项中建立“中值滤波”、“图
3、像锐化”和“拉普拉斯算法”三个子菜单。5.在“中值滤波”的子菜单的下拉菜单中创建一个“二维中值滤波”的项,在“拉普拉斯算法”下拉菜单中建立“拉普拉斯模糊”和“去除拉普拉斯模糊”两个项。4.分别对“二维中值滤波”、“图像锐化”、“拉普拉斯模糊”和“去除拉普拉斯模糊”建立类向导,编写代码。五、程序代码冒泡法算法的程序:voidCZzyView::mysort(int*a,intn)//算法{inti,j,t;for(i=0;ia[j+1]){t
4、=a[j];a[j]=a[j+1];a[j+1]=t;}}}二维中值滤波的代码voidCZzyView::OnErweizhongzhi()//二维中值滤波{longw,h;longi,j;w=m_DibHead->biWidth;h=m_DibHead->biHeight;unsignedchar*f=newunsignedchar[w*h];memcpy(f,m_Image,w*h);intm,n;m=5;n=5;int*a=newint[m*n];intk,l;for(i=0;i5、0;j6、>biWidth;h=m_DibHead->biHeight;unsignedchar*f=newunsignedchar[w*h];memcpy(f,m_Image,w*h);for(i=0;i7、CZzyView::OnLaplasmh()//拉普拉斯模糊{longw,h;longi,j;w=m_DibHead->biWidth;h=m_DibHead->biHeight;int*p1=newint[w*h];int*p2=newint[w*h];for(i=0;i8、;j++){p2[i*w+j]=p1[(i+1)*w+j]+p1[(i-1)*w+j]+p1[i*w+j+1]+p1[i*w+j-1]-4*p1[i*w+j];if(p2[i*w+j]
5、0;j6、>biWidth;h=m_DibHead->biHeight;unsignedchar*f=newunsignedchar[w*h];memcpy(f,m_Image,w*h);for(i=0;i7、CZzyView::OnLaplasmh()//拉普拉斯模糊{longw,h;longi,j;w=m_DibHead->biWidth;h=m_DibHead->biHeight;int*p1=newint[w*h];int*p2=newint[w*h];for(i=0;i8、;j++){p2[i*w+j]=p1[(i+1)*w+j]+p1[(i-1)*w+j]+p1[i*w+j+1]+p1[i*w+j-1]-4*p1[i*w+j];if(p2[i*w+j]
6、>biWidth;h=m_DibHead->biHeight;unsignedchar*f=newunsignedchar[w*h];memcpy(f,m_Image,w*h);for(i=0;i7、CZzyView::OnLaplasmh()//拉普拉斯模糊{longw,h;longi,j;w=m_DibHead->biWidth;h=m_DibHead->biHeight;int*p1=newint[w*h];int*p2=newint[w*h];for(i=0;i8、;j++){p2[i*w+j]=p1[(i+1)*w+j]+p1[(i-1)*w+j]+p1[i*w+j+1]+p1[i*w+j-1]-4*p1[i*w+j];if(p2[i*w+j]
7、CZzyView::OnLaplasmh()//拉普拉斯模糊{longw,h;longi,j;w=m_DibHead->biWidth;h=m_DibHead->biHeight;int*p1=newint[w*h];int*p2=newint[w*h];for(i=0;i8、;j++){p2[i*w+j]=p1[(i+1)*w+j]+p1[(i-1)*w+j]+p1[i*w+j+1]+p1[i*w+j-1]-4*p1[i*w+j];if(p2[i*w+j]
8、;j++){p2[i*w+j]=p1[(i+1)*w+j]+p1[(i-1)*w+j]+p1[i*w+j+1]+p1[i*w+j-1]-4*p1[i*w+j];if(p2[i*w+j]
此文档下载收益归作者所有