数字图像处理课程作业实验报告

数字图像处理课程作业实验报告

ID:35650842

大小:3.98 MB

页数:31页

时间:2019-04-06

数字图像处理课程作业实验报告_第1页
数字图像处理课程作业实验报告_第2页
数字图像处理课程作业实验报告_第3页
数字图像处理课程作业实验报告_第4页
数字图像处理课程作业实验报告_第5页
资源描述:

《数字图像处理课程作业实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、研究生课程:数字图像处理课程作业实验报告实验名称:ImageInterpolation实验编号:Proj02-01摘要:本实验采用双线性插值技术对图像进行缩放,实验的原理是来源于数值分析中的插值问题。双线性插值算法是一种比较好的图像缩放算法,它充分的利用了源图中虚拟点四周的四个真实存在的像素值来共同决定目标图中的一个像素值,因此缩放效果比较好。30实验内容概述关于编程的一点说明: 本课程实验的主要目的如下:(1)掌握图像处理的基本方法与步骤,(2)帮助学生建立图像处理技术解决问题的感性概念,以及解决问题的软件原型。最后,需要说明的是,完成本课程实验所需要的编程环

2、境可以是C++等常规的程序开发环境,也可以是包含有已经存在的具有可扩展能力的函数集合组成的集成编程环境。最典型的例子是MATLAB的图像处理工具箱(ImageProcessingToolbox,IPT)编程环境。建议实验中使用后一种类型的集成编程环境。 下面是具体的实验题目及其说明:ProjectNo.TitleProj02-01ImageInterpolation(图像线性插值)Proj02-02ReducingtheNumberofGrayLevelsinanImage.(在图像中减少灰度级的数量)Proj03-02HistogramEqualization

3、.(直方图均衡化)Proj03-05EnhancementUsingtheLaplacian.(使用拉普拉斯算子的图像增强)Proj04-01Two-DimensionalFastFourierTransform.(二维快速付立叶变换),FourierSpectrumandAverageValue.(付立叶谱和平均值)LowpassFiltering.(低通滤波)Proj05-02NoiseReductionUsingaMedianFilter.(噪声去除的中值滤波方法)Proj05-04ParametricWienerFilter.(参数维纳滤波)Proj06

4、-02Pseudo-ColorImageProcessing.(图像的伪彩色处理)Proj07-02Two-dimensionalDiscreteWaveletTransforms.(二维离散小波变换)30WaveletTransformModifications.(小波变换系数修改)Proj10-03OptimumThresholding.(最优阈值)PROJECT02-01(ImageInterpolation)(a)编写一个线性插值程序,将64*64大小的图像插值为256*256的图像,并与matlab的imresize函数的结果相比较;(b)图像变换函数

5、采用仿射变换,图像x和y方向都放大4倍,并逆时针旋转15度,未定义区域赋值0。一、技术论述对于双线性插值算法,首先进行初始化,读取所要缩放的图像,获取目标大小64*64,以及目标像素点的横坐标和纵坐标,然后根据所提供的公式算法逐点做双线性内插,根据双线性插值算法的思路(即目标图像中的像素值由原图像中在空间位置上最接近的四个像素值按照特定的公式:S=(a)(b)S1+(1-a)(b)S2+(a)(1-b)S3+(1-a)(1-b)S4进行计算)对目标图像点计算相应的a、b、S1、S2、S3、S4,然后根据上述公式计算出该像素点的值,最后显示图像效果。二、实验结果与

6、讨论2.1实验结果展示(a)效果展示30(b)效果展示2.2讨论双线性插值算法在放大图像的过程中虽然会损失部分像素点,可图像的清晰度还是很高的,所以双线性插值算法可以广泛应用在图像变形、计算机动画等领域。附录%%读入图像I=imread('Fig.jpg');%%获取图像的尺寸[rows,cols]=size(I);%%初始化要缩放的参数width=1024;height=1024;%创建输出图像矩阵Out=uint8(zeros(width,height));widthScale=rows/width;heightScale=cols/height;%%循环处

7、理forx=6:width-6%6是为了防止矩阵超出边界溢出fory=6:height-630oldX=x*widthScale;%oldX,oldY为原坐标,x,y为新坐标oldY=y*heightScale;if(oldX/double(uint16(oldX))==1.0)&(oldY/double(uint16(oldY))==1.0)Out(x,y)=I(int16(oldX),int16(oldY));%若oldX,oldY为整数,直接赋值elsea=double(uint16(oldX));b=double(uint16(oldY));x11=do

8、uble(I(a,b))

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。