资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
遥感原理与应用课程设计一、课程设计的目的 n 加深理解和巩固遥感原理与应用的有关理论知识; 运用专业遥感软件,通过对遥感影像进行各种处理以及 专题信息提取等综合应用,培养独立分析问题和解决问 题的能力; 通过自主编程设计,加强对遥感图像处理算法的理解和 提高编程实践能力; n 培养良好的工作习惯和科学素养,为今后工作打下 良好的基础。遥感原理与应用课程设计 二、课程设计性质 n 综合型、设计型课程遥感原理与应用课程设计 n 课程设计针对什么?课程设计的任务 n 课程设计要设计什么?课程设计的内容 n 如何去完成课程设计?课程设计的方法 n 课程设计得到什么?课程设计的成果遥感原理与应用课程设计三、课程设计的任务对于常用的遥感图像处理,自主设计算法并用 VC编程实现。针对遥感影像数据,如何从影像上进行专题信 息提取与专题制图。遥感原理与应用课程设计四、课程设计的内容 - 数据说明 n 地点:不同地区(武汉等地) n 传感器类型 TM1、3、4、5、6、7波段影像,相邻有重叠左 右影像各一幅。空间分辨率:30米、120米, tif 图像格式,无空间坐标信息。 SPOT影像,分辨率10米。tif图像格式。SPOT影 像投影信息、大地坐标、分辨率可参见说明文件 :Readme.txt Ikonos、Quickbird、GF遥感原理与应用课程设计四、课程设计的内容 - 使用软件常用遥感图像处理的算法的实现 (MS VC+ 6.0,vs2010)针对遥感影像数据,设计从遥感影像上进行专题 信息提取与专题制图的总体方案、流程框图以及 具体步骤、方法 (Erdas Imagine)遥感原理与应用课程设计五、课程设计的方法实习过程中要求大家养成遇到问题先独立思考、后询问教师、再 归纳总结的习惯; 效果评估与改进:对每一步骤的实现方法进行归纳总结,找出其 中的关键点和难点;对每一步处理的效果进行评估,找出影响效 果的因素和提高效果的方法; 利用VC自主编程完成和实现算法的设计,编程中出现疑难可采取 查阅资料、相互讨论、询问教师的方法,不得互相抄袭、拷贝。 自主设计任务方案与流程框图:学生根据课程设计任务,完成“ 遥感专题信息提取与专题图制作”的总体方案设计与流程框图设 计,交给教师审核修改;遥感原理与应用课程设计六、课程设计的成果 VC编程实现算法设计的程序代码(注释完备); VC编程实现遥感图像处理算法的设计报告。“遥感专题信息提取与专题制图”的总体实际方案与流 程框图; 基于ERDAS软件完成的“遥感专题信息提取与专题 制图”专题图成果及实习报告;遥感原理与应用课程设计七、课程设计的进度安排单元主要内容第一周1-6自主编程实现遥感图像处理算法设计7分班级成果验收答辩 第二周8学习任务书、完成方案设计和流程框图9教师审核课程设计方案,学生阅读指导 书、掌握遥感数据处理的相关操作10-14ERDAS软件实现专题信息提取遥感原理与应用课程设计nERDAS软件 “遥感专题信息提取与专题图制作”设 计报告,按以下框架撰写 1. 课程设计的目的和意义 2. 课程设计的原理和方法 3. 课程设计的过程和步骤 4. 课程设计的结果分析与评价 5. 课程设计的总结与体会nVC编程实现遥感图像处理算法的设计报告,设计 报告按科技论文格式撰写 遥感原理与应用课程设计课程设计的要求 1. 独立设计、自主完成。在教师指导下独 立完成。提倡交流、讨论,严禁抄袭、拷贝 等现象。 2. 课程设计完成后每个学生制作PPT并进行 个人答辩,个人答辩情况将计入成绩。 3. 遵守纪律、按时上下课。 4. 主动维护好实验室硬软件,保持实验室卫 生遥感原理与应用课程设计课程设计的考核1.算法自主设计编程与答辩(50%) 2.ERDAS软件部分(40%) 3.平时考勤(10%)开源库的利用o GDAL:一个操作各种栅格地理数据格式的 库。包括读取、写入、转换、处理各种栅格 数据格式。这个库还同时包括了操作矢量数 据的另一个有名的库ogr。这样这个库就同 时具备了操作栅格和矢量数据的能力。开源库的利用o OpenCV:(Open Source Computer Vision Library),OpenCV是一个开源发 行的跨平台计算机视觉库,可以运行在 Linux、Windows和Mac OS操作系统上。 拥有包括 300 多个C函数的跨平台的中、 高层 API。它不依赖于其它的外部库尽 管也可以使用某些外部库。 o 这两个库的使用先由学生自己查阅资料,根 据自己的软件开发环境选择相应版本下载。编程要求o 以小组为,每组三人。单位选择专题,至少 选择2个专题。 o 封装一个专门用于读写和显示影像类; o 封装一个对影像进行各种处理的算法类。 o 如果选择专题一专题六,要求使用 GDAL库读写影像;时间安排o 第一、二单元确定任务和熟悉GDAL库与 OpenCV的使用,基本读写和显示操作封装 到一个类;注意查看影像数据的类型( unsigned char 8bit,unsigned 16bit、 float等),如何将不同类型数据都直观显示 在屏幕上; o 第三单元算法流程设计; o 第四-六单元算法设计实现; o 第七单元设计成果汇报。汇报内容o 分小组,小组不同人分工汇报 o GDAL的使用,使用了哪些功能,如何调用 实现的; o OpenCV的使用,使用了哪些功能,如何调 用实现的; o 算法设计思想和流程 o 算法实现中遇到的问题 o 算法的效果、适用性以及改进。遥感影像数据读取与基本处理o GDAL库基本介绍 o 基于GDAL库的图像读取与保存 o 函数模板与类模板 o 图像显示 o 图像基本处理GDAL库基本介绍GDAL 抽象数 据模型GDAL库基本介绍GDAL基础类1、GDAL库基本介绍GDAL实 用工具介绍o gdalinfo o gdal_translate o gdalwarp o gdal_contour o gdaladdo o gdaldem o gdal_rasterize o gdal2tiles第 21 页1、GDAL库基本介绍GDAL库 使用设置第 22 页2、GDAL库读取影像(1)打开文件 ,得到数据集GDALAllRegister(); GDALDataset *poDataset = (GDALDataset *) GDALOpen( pszFilename, GA_ReadOnly); /GA_Update if( poDataset = NULL ) AfxMessageBox(LPCTSTR)“File open Error!“,0,0); 第 23 页2、GDAL库读取影像(2)获取 影像基本信息o 宽度:poDataset-GetRasterXSize() o 高度:poDataset-GetRasterYSize() o 波段数:poDataset-GetRasterCount() o 数据类型: GDALRasterBand *pRasterBand; pRasterBand = poDataset-GetRasterBand(1); GDALDataType T = pRasterBand- GetRasterDataType();第 24 页2、GDAL库读取影像像素数据 类型typedef enum /*! Unknown or unspecified type */ GDT_Unknown = 0,/*! Eight bit unsigned integer */ GDT_Byte = 1,/*! Sixteen bit unsigned integer */ GDT_UInt16 = 2,/*! Sixteen bit signed integer */ GDT_Int16 = 3,/*! Thirty two bit unsigned integer */ GDT_UInt32 = 4,/*! Thirty two bit signed integer */ GDT_Int32 = 5,/*! Thirty two bit floating point */ GDT_Float32 = 6,/*! Sixty four bit floating point */ GDT_Float64 = 7,/*! Complex Int16 */ GDT_CInt16 = 8,/*! Complex Int32 */ GDT_CInt32 = 9,/*! Complex Float32 */ GDT_CFloat32 = 10,/*! Complex Float64 */ GDT_CFloat64 = 11,GDT_TypeCount = 12 /* maximum type # + 1 */ GDALDataType; /*!Pixel data types*/第 25 页2、GDAL库读取影像(3)获取 影像数据/注意:不同类型数据类型需要分配的内存空间大小不同 int nTypeSize=GDALGetDataTypeSize( T); /分配内存 BYTE * m_BandsDataPtr = new BYTE nWidth*nHeight*nTypeSize*nBands; /读取影像原始大小的数据到内存 poDataset- RasterIO(GF_Read,0,0,nWidth,nHeight,m_BandsDataPtr,nWidt h,nHeight,nDataType,nBands,NULL,0,0,0); /通过模板函数访问以及处理不同类型影像数据 template void CImg:SetDibData(T)第 26 页3、影像显示o 显示原理:位图结构 o 显示方法:创建位图 o 显示函数:StretchDIBits()o 可以使用CBmpFile类、DIB库、OpenCV 库生成位图,调用相应函数显示图像。第 27 页路径设置路径设置路径设置附加 依赖库 设置附加依赖库oopencv_calib3d248d.lib opencv_contrib248d.lib oopencv_core248d.lib opencv_features2d248d.lib oopencv_flann248d.lib opencv_gpu248d.lib oopencv_highgui248d.lib opencv_imgproc248d.lib oopencv_legacy248d.lib opencv_ml248d.lib oopencv_nonfree248d.lib opencv_objdetect248d.lib oopencv_photo248d.lib opencv_stitching248d.lib oopencv_ts248d.lib opencv_video248d.lib oopencv_videostab248d.lib opencv_calib3d248.lib oopencv_contrib248.lib opencv_core248.lib oopencv_features2d248.lib opencv_flann248.lib oopencv_gpu248.lib o
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号