图像金字塔实验

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

学生实验报告实验报告注意事项1.课前必须认真预习实验,认真书写预习报告,了解实验步骤,未预习或预习达不到要求的学生不准参加实验;2.实验完毕,必须将结果交实验指导教师进行检查,并将计算机正常关机、将仪器设备、用具及椅子等整理好,方可离开实验室;3.按照实验要求书写实验报告,条理清晰,数据准确;4.当实验报告写错后,不能撕毁,请在相连的实验报告纸上重写;5.实验报告严禁抄袭,如发现抄袭实验报告的情况,则抄袭者与被抄袭者该次实验以0分计;6.无故缺实验者,按学院学籍管理制度进行处理;7.课程结束后实验报告册上交实验指导教师,并进行考核与存档。实验项目()—预习报告实验名称图像金字塔实验实验目的及要求1、了解图像采样的概念,以及采样与分辨率变化之间的关系。2、通过仿真实验,理解图像金字塔的含义。3、通过拉普拉斯残差金字塔,观察四层图像金字塔的实验结果,掌握利用残差重构原图像的原理与过程。实验内容及原理实验内容:1、利用OpenCV完成图像四个图像层方面的采样并显示。依据OpenCV自带两种图像金字塔函数,实现四层图像采样并显示。2、利用拉普拉斯图像金字塔原理,实现四层图像采样并显示。实验原理:图像金字塔是图像中多尺度表达的一种,最主要用于图像的分割,是一种以多分辨率来解释图像的有效但概念简单的结构。图像金字塔最初用于机器视觉和图像压缩,一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低,且来源于同一张原始图的图像集合。其通过梯次向下采样获得,直到达到某个终止条件才停止采样。拉普拉斯金字塔:用来从金字塔低层图像重建上层未采样图像,在数字图像处理中也即是预测残差,可以对图像进行最大程度的还原,配合高斯金字塔一起使用。拉普拉斯金字塔中的图像可用对高斯金字塔中相邻两层图象的相减而近似得到。需先将图像在较粗的尺度(较高的层次)上扩展。扩展比减少尺寸的压缩困难,因为缺少的信息需要通过插值来得到。如果想放大图像,则需要通过向上取样操作得到,具体做法如下:(1)将图像在每个方向扩大为原来的两倍,新增的行和列以0填充.(2)使用先前同样的内核(乘以4)与放大后的图像卷积,获得“新增像素”的近似值。得到的图像即为放大后的图像,但是与原来的图像相比会发觉比较模糊,因为在缩放的过程中已经丢失了一些信息,如果想在缩小和放大整个过程中减少信息的丢失,这些数据形成了拉普拉斯金字塔。拉普拉斯金字塔在图像融合中有所应用,方法是首先对两个待融合图像求拉普拉斯残差金字塔,然后用模板对每一级残差图像进行融合得到融合后图像的残差金字塔,然后对这个金字塔进行重构就能得到最终的融合图像,图像各尺度细节得到保留。预习过程中的疑问图像采样和分辨率变化的关系如何利用拉普拉斯金字塔原理进行图像采样实验项目()—实验报告实验名称图像金字塔实验指导教师实验室实验日期2016.5.30分组情况成绩实验步骤(算法、代码、方法等)实验步骤(1)//#includeopencv2/opencv.hpp//#includeopencv2/imgproc/imgproc.hpp////usingnamespacecv;////intmain()//{////载入原始图//IplImage*temp=cvLoadImage(lena.jpg);////MatsrcImage=imread(lena.jpg);//工程目录下应该有一张名为.jpg的素材图//MatsrcImage(temp);//MattmpImage,dstImage1,dstImage2;//临时变量和目标图的定义//tmpImage=srcImage;//将原始图赋给临时变量//////显示原始图//imshow(【原始图】,srcImage);//////进行尺寸调整操作//resize(tmpImage,dstImage1,Size(tmpImage.cols/2,tmpImage.rows/2),(0,0),(0,0),3);//resize(tmpImage,dstImage2,Size(tmpImage.cols*2,tmpImage.rows*2),(0,0),(0,0),3);//////显示效果图//imshow(【效果图】之一,dstImage1);//imshow(【效果图】之二,dstImage2);////waitKey(0);//return0;//}#includeopencv2/opencv.hpp#includeopencv2/imgproc/imgproc.hppusingnamespacecv;intmain(){//载入原始图IplImage*temp=cvLoadImage(lena.jpg);//MatsrcImage=imread(1.jpg);//工程目录下应该有一张名为.jpg的素材图MatsrcImage(temp);MattmpImage,dstImage;//临时变量和目标图的定义tmpImage=srcImage;//将原始图赋给临时变量//显示原始图imshow(【原始图】,srcImage);//进行向上取样操作pyrUp(tmpImage,dstImage,Size(tmpImage.cols*2,tmpImage.rows*2));//显示效果图imshow(【效果图1】,dstImage);//进行向下取样操作pyrDown(tmpImage,dstImage,Size(tmpImage.cols/2,tmpImage.rows/2));//显示效果图imshow(【效果图2】,dstImage);//进行尺寸调整操作resize(tmpImage,dstImage,Size(tmpImage.cols/3,tmpImage.rows/3),(0,0),(0,0),3);//显示效果图imshow(【效果图3】,dstImage);//进行尺寸调整操作resize(tmpImage,dstImage,Size(tmpImage.cols*3,tmpImage.rows*3),(0,0),(0,0),3);//显示效果图imshow(【效果图4】,dstImage);waitKey(0);return0;}(2)#includeopencv2/opencv.hpp#includeopencv2/imgproc/imgproc.hppusingnamespacecv;intmain(){//载入原始图IplImage*temp=cvLoadImage(lena.jpg);//MatsrcImage=imread(1.jpg);//工程目录下应该有一张名为.jpg的素材图MatsrcImage(temp);MattmpImage,dstImage,asd,dsa;//临时变量和目标图的定义tmpImage=srcImage;//将原始图赋给临时变量imshow(1,srcImage);pyrUp(tmpImage,dstImage,Size(tmpImage.cols*2,tmpImage.rows*2));imshow(2,dstImage);pyrDown(tmpImage,dstImage,Size(tmpImage.cols/2,tmpImage.rows/2));imshow(3,dstImage);pyrUp(dstImage,asd,Size(dstImage.cols*2,dstImage.rows*2));imshow(4,asd);pyrDown(dstImage,dsa,Size(dstImage.cols/2,dstImage.rows/2));imshow(5,dsa);waitKey(0);return0;}实验结果(结论及分析、遇到的问题及解决方案、意见及建议等)(1)(2)

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功