文档库 最新最全的文档下载
当前位置:文档库 › 实验3-JSP动作实验

实验3-JSP动作实验

实验3-JSP动作实验
实验3-JSP动作实验

实验3 JSP动作实验

一、实验目的

本实验的目的是让学生掌握怎样在JSP页面中使用include标记动态加载文件;使用forward实现页面的转向。

二、实验要求

要求学生掌握使用JSP动作完成页面包含、页面跳转等功能,能够熟练运用include动作、forward动作。

三、实验内容与步骤

编写四个JSP 页面:one.jsp 、two.jsp、three.jsp和error.jsp。one.jsp 、two.jsp和three.jsp 页面都含有一个导航条,以便让用户方便地单击超链接访问这三个页面,要求这三个页面通过使用include动作标记动态加载导航条文件head.html。

导航条文件head.html的内容如下所示:

head.html

border="0" >

one.jsp页面two.jsp页面three.jsp页面

(1)one.jsp的具体要求

one.jsp页面有一个表单,用户使用该表单可以输入一个1~100之间的整数,并提交process.jsp页面;

在process.jsp页面中,判断输入的数据是否在50~100之间(不包括50)就转向three.jsp,如果在1~50之间就转向two.jsp;如果输入不符合则抛出异常,并设定异常产生的原因为“The given number is not in the predefined range: 1~100.”,交给错误处理页面error.jsp进行处理。

在使用forward动作实现页面转向时,使用param子标记将整数传递到转向的two.jsp 或three.jsp页面。

(2)two.jsp、three.jsp和error.jsp的具体要求

要求two.jsp和three.jsp能输出one.jsp传递过来的值。error.jsp页面能显示有关的错误信息。

页面运行效果示例:

one.jsp(效果如图1所示)

图1 使用include动作标记加载导航条two.jsp(效果如图2所示)

图2 得到param子标记传递来的值three.jsp(效果如图3所示)

图3 得到param子标记传递来的值error.jsp(效果如图4所示)

图4 显示错误信息

四、实验作业的提交要求

1)将实验程序的运行截图放到实验报告中。

2)将源代码文件(或工程目录)与实验报告文件打包压缩,压缩文件名的命名规则:学号_姓名,提交到课程系统中。

图像处理实验二解析

昆明理工大学信息工程与自动化学院学生实验报告 (2014—2015学年第二学期) 课程名称:图形图像基础开课实验室:444 2014年 6月 4 日年级、专业、班计科111 学号201110405138 姓名成绩实验项目名称图像分割指导教师刘辉教 师 评语 教师签名: 年月日 一、实验目的及内容 目的:掌握和熟悉Matlab编程环境及语言;掌握数学形态学和图像分割的基本原理及 应用。 内容: 1.通过数学形态学实现边界提取。 2.通过全局阈值及局部阈值实现灰度图像二值化; 3.分别用Sobel算子和Canny算子对图像进行边缘检测;通过Hough检测图像中的直 线。 二、要求 1.描述腐蚀、膨胀、开运算、闭运算的原理。 膨胀:将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。 利用它可以填补物体中的空洞。B对X膨胀所产生的二值图像D是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么它与X的交集非空。 数学表达式:B=A⊕C 腐蚀:一种消除边界点,使边界向内部收缩的过程。利用它可以消除小而且无意义的物体。B对X腐蚀所产生的二值图像E是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么B将完全包含于X中。 数学表达式:B=AΘC 腐蚀:是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的

物体。 膨胀:是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。 可以用来填补物体中的空洞。 开运算:先腐蚀后膨胀的过程开运算。用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。开运算通常是在需要去除小颗粒噪声,以及断开目标物之间粘连时使用。其主要作用与腐蚀相似,与腐蚀操作相比,具有可以基本保持目标原有大小不变的优点。 闭运算:先膨胀后腐蚀的过程称为闭运算。用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。 2.编写程序,使用数学形态学方法实现边界提取。 3.描述全局阈值、局部阈值对图像进行二值化的原理。 数学形态学中二值图像的形态变换是一种针对集合的处理过程。其形态算子的实质是表达物体或形状的集合与结构元素间的相互作用,结构元素的形状就决定了这种运算所提取的信号的形状信息。形态学图像处理是在图像中移动一个结构元素,然后将结构元素与下面的二值图像进行交、并等集合运算。 阈值分割法分为全局阈值法和局部阈值分割法。所谓局部阈值分割法是将原始图像划分成较小的图像,并对每个子图像选取相应的阈值。在阈值分割后, 相邻子图像之间的边界处可能产生灰度级的不连续性,因此需用平滑技术进行 排除。局部阈值法常用的方法有灰度差直方图法、微分直方图法。局部阈值分 割法虽然能改善分割效果,但存在几个缺点: (1)每幅子图像的尺寸不能太小,否则统计出的结果无意义。 (2)每幅图像的分割是任意的,如果有一幅子图像正好落在目标区域或背景区域,而根据统计结果对其进行分割,也许会产生更差的结果。 (3)局部阈值法对每一幅子图像都要进行统计,速度慢,难以适应实时性的要求。

城市链表实验报告

2014-2015学年第一学期实验报告 课程名称:算法与数据结构 实验名称:城市链表

一、实验目的 本次实验的主要目的在于熟悉线性表的基本运算在两种存储结构上的实现,其中以熟悉各种链表的操作为侧重点。同时,通过本次实验帮助学生复习高级语言的使用方法。 二、实验内容 (一)城市链表: 将若干城市的信息,存入一个带头结点的单链表。结点中的城市信息包括:城市名,城市的位置坐标。要求能够利用城市名和位置坐标进行有关查找、插入、删除、更新等操作。 (二) 约瑟夫环 m 的初值为20;密码:3,1,7,2,6,8,4(正确的结果应为6,1,4,7,2,3,5)。三、实验环境 VS2010 、win8.1 四、实验结果 (一)城市链表: (1)创建城市链表; (2)给定一个城市名,返回其位置坐标; (3)给定一个位置坐标P 和一个距离D,返回所有与P 的距离小于等于 D 的城市。 (4)在已有的城市链表中插入一个新的城市; (5)更新城市信息; (6)删除某个城市信息。 (二) 约瑟夫环 m 的初值为20;密码:3,1,7,2,6,8,4 输出6,1,4,7,2,3,5。 五、附录 城市链表: 5.1 问题分析 该实验要求对链表实现创建,遍历,插入,删除,查询等操作,故使用单链表。

5.2 设计方案 该程序大致分为以下几个模块: 1.创建城市链表模块,即在空链表中插入新元素。故创建城市链表中包涵插入模块。 2.返回位置坐标模块。 3.计算距离模块 4.插入模块。 5.更新城市信息模块 6.删除信息模块。 5.3 算法 5.3.1 根据中心城市坐标,返回在距离内的所有城市: void FindCityDistance(citylist *L){ //根据距离输出城市 ……//输入信息与距离 L=L->next; w hile(L != NULL){ if(((L->x-x1)*(L->x-x1)+(L->y-y1)*(L->y-y1 )<=dis*dis)&&(((L->x-x1)+(L->y-y1))!=0 )){ printf("城市名称%s\n",L->Name); printf("城市坐标%.2lf,%.2lf\n",L->x,L->y); } L=L->next; } } 该算法主要用到了勾股定理,考虑到不需要实际数值,只需要大小比较,所以只用 横坐标差的平方+纵坐标差的平方<= 距离的平方判定。

实验基本操作复习专题

化学实验基本操作专题复习 复习重点: 了解常用的化学实验仪器的名称、用途以及使用注意事项。掌握一些重要的实验基本操作。常见的仪器如试管、滴管、酒精灯、烧杯、量筒、集气瓶、漏斗、长颈漏斗、托盘天平、玻璃棒等;重要的实验基本操作如固体、液体药品的取用,酒精灯的使用与加热,溶液的配制,装置气密性的检查,溶解、过滤、蒸发等分离或提纯物质、溶液酸碱性的测定的实验操作方法等。 复习难点: 仪器的用途归纳、实验原因分析、实验现象描述 复习过程 考点知识梳理 一、基本实验操作 二、常见仪器的用途 合作归纳:玻璃棒的用途 集气瓶的用途 烧杯的用途 三、基本实验操作分析 1)请指出并改正下列实验操作描述中的错误之处 A.将10g氯化钠固体直接放在天平的托盘上称量 B.量取90ml水时,俯视读数 C.为了准确,可以在量筒中配制溶液 D.稀释浓硫酸时,将水缓慢注入浓硫酸中 E.为了节约药品,用剩的药品应放回原试剂瓶 F.为了获得感性认识,可触摸药品或尝药品的味道 G.为了能看到标签,倾倒液体时,标签不能向着手心 2)请指出并改正下列实验操作描述中的错误之处 1.测定溶液酸碱性时,为使现象更明显,加入的指示剂越多越好 2.检验铵盐和碱共热时有无氨气放出,应用干燥的红色石蕊试纸检验 3.为了便于观察,给试管加热时,试管口应对着自己 4.用pH试纸测定溶液酸碱度时,先将pH试纸润湿,然后再测定

5.滴管伸入试管可以准确地把液体滴入试管 6. 选用量程为50mL的量筒量取8mL液体 7.搅拌过滤器内的液体可以加快过滤速度 四、常见反应的实验现象 五、实验安全和意外事故的处理 六、中考模拟演练 1、1)下列有关实验现象的描述中正确的是(多选,用字母作答) A. 红磷在氧气中燃烧发出耀眼的白光,并产生大量的白雾 B. 细铁丝在氧气中燃烧火星四射,生成红色固体 C. 打开浓盐酸的试剂瓶盖,一会儿瓶口会产生白烟 D. 某同学在做一氧化碳还原氧化铁的实验过程中,观察到试管中红棕色粉末逐渐变黑 E.向硫酸铜溶液中滴加氢氧化钠溶液有蓝色沉淀产生 2)请从下列A或B中两题中任选一个 ....作答,若两题均作答。 、(1)下列因素会导致配制的氯化钠溶液的溶质质量分数偏小的是(多选,用字母作答) A.称取的氯化钠不干燥 B.量水时俯视刻度 C.用来的溶解的烧杯内壁有水 D.用玻璃棒搅拌时有液体溅出 E.转移已配好溶液时有液体洒出 (2)请从下列甲乙两两题中任选一题作答。

数字图像处理实验二 图像灰度变换

实验二 图像灰度变换实验一、 实验目的熟悉亮度变换函数的使用熟悉灰度图像的直方图的表示;掌握图像增强的基本方法:灰度变换、直方图均衡;二、实验内容灰度线性变换、灰度直方图、直方图均衡处理;灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特征更加明显。灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像增强。三、实验原理1.函数imadjust 函数imadjust 是对灰度图像进行亮度变换的基本命令,语法为: g = imadjust(f, [low_in high_in], [low_out high_out], gamma) 将图像f 中的亮度值(灰度值)映射到新图像g 中,即将low_in 至high_in 之间的值映射到low_out 至high_out 之间的值。low_in 以下的灰度值映射为low_out ,high_in 以上的灰度值映射为high_out ,函数imadjust 的矩阵[ ]内参数均指定在0和1之间,[low_in high_in]和[low_out high_out]使用空矩阵[ ]会得到默认值[0 1]。若high_out 小于low_out ,则输出图像会反转。 参数gamma 指定了曲线(变换函数)的形状,若gamma 小于1,则映射被加权至更高(更亮)的输出值;若gamma 大于1,则映射被加权至更低(更暗)的输出值。若省略了函数的参量gamma ,则gamma 默认为1——即线性映 射。 >>f = imread(‘filename’)>>imshow(f)>>g1 = imadjust(f, [0 1], [1 0]); %图像反转>>figure, imshow(g1) %figure 命令表示同时显示多个窗口 >>g2 = imadjust(f, [0.5 0.75], [0 1]); %将0.5至0.75之间的灰度级扩展到范围0和1之间 >>figure, imshow(g2) >>g3 = imadjust(f, [ ], [ ], 2) %使用gamma 值 >>figure, imshow(g3)

链表实验报告

C语言程序设计实验报告 实验一:链表的基本操作一·实验目的 1.掌握链表的建立方法 2.掌握链表中节点的查找与删除 3.掌握输出链表节点的方法 4.掌握链表节点排序的一种方法 5.掌握C语言创建菜单的方法 6.掌握结构化程序设计的方法 二·实验环境 1.硬件环境:当前所有电脑硬件环境均支持 2.软件环境:Visual C++6.0 三.函数功能 1. CreateList // 声明创建链表函数 2.TraverseList // 声明遍历链表函数 3. InsertList // 声明链表插入函数 4.DeleteTheList // 声明删除整个链表函数 5. FindList // 声明链表查询函数 四.程序流程图 五.程序代码 #include #include typedef int Elemtype; typedef int Status; typedef struct node//定义存储节点 { int data;//数据域 struct node *next;//结构体指针 } *linklist,node;//结构体变量,结构体名称 linklist creat (int n)//创建单链表 { linklist head,r,p;//定义头指针r,p,指针 int x,i; head=(node *)malloc(sizeof(node));//生成头结点

r=head;//r指向头结点 printf("输入数字:\n"); for(i=n;i>0;i--)//for 循环用于生成第一个节点并读入数据{ scanf("%d",&x); p=(node *)malloc(sizeof(node)); p->data=x;//读入第一个节点的数据 r->next=p;//把第一个节点连在头结点的后面 r=p;//循环以便于生成第二个节点 } r->next=0;//生成链表后的断开符 return head;//返回头指针 } void output (linklist head)//输出链表 { linklist p; p=head->next; do { printf("%3d",p->data); p=p->next; } while(p); printf("\n") } Status insert ( linklist &l,int i, Elemtype e)//插入操作 { int j=0; linklist p=l,s; while(jnext; ++j; } if(!p || j>i-1) return -1; else { s=(node *)malloc(sizeof(node)); s->data=e; s->next=p->next; p->next=s; return 1; } } Status delect ( linklist &l,int i, Elemtype &e)//删除操作 { int j=0; linklist p=l,q; while(jnext) { p=p->next; ++j; } if(!p->next || j>i-1) return -1;

实验二 图像的基本操作

实验二图像的基本操作 实验目的 1.熟悉Photoshop CS的基本操作 2.掌握常用工具的使用 3.掌握图层的简单应用 实验内容 1.立体相框的制作 2.移花接木 3.制作圆柱体等图案 4.修补照片 5.制作彩色文字 6.制作心形图案 1.立体相框的制作,请把结果文件保存为sy2-1.psd。 ①打开图片“牡丹花.jpg”,单击菜单“图像|图像大小”,观察图像现在的像素大小是多少MB?然后用计算器计算2048*1536*3/(1024*1024)是不是正好等于图像的像素大小,为什么? 将图片大小改为1024*768,分辨率为72pps(像素/英寸),观察现在的文档大小是多少? 请计算1024/(72/2.54)和768/(72/2.54)是否就是文档大小?(1英寸=2.54厘米),下面请将分辨率改为300pps,如果保持文档大小不变,请观察像素大小的变化,继续将像素大小改为1024*768,请观察文档大小是多少? 通过本实验请大家了解像素大小、文档大小和分辨率之间的关系。 ②打开“t1.jpg”图片,图像大小改为100*72,选取该照片定义为图案。 ③继续将“牡丹花.jpg”图片的画布四周扩大2厘米,然后将自己定义的图案填充到扩充的画布区域内。 ④在图层面板中双击背景图层将其转换为普通图层,然后添加斜面与浮雕的立体效果,样式自己定义。效果如图2-1所示。 图2-1 立体相框图2-2 一串红 2.移花接木,请把结果文件保存为sy2-2.psd。 ①打开“一串红.jpg”,将图像的大小改成800*600,图像顺时针旋转90度,如图2-2所示。 ②打开图像文件“蝴蝶.jpg”,将图像放大显示到300%,用钢笔工具描绘出蝴蝶的路径(注意工具选项栏中按下路径按钮),如图2-3所示,然后在如图2-4所示的路径面板中

(完整版)初中化学实验基本操作练习题

化学实验基本操作同步练习 一、选择题 1、对化学实验剩余的药品,处理方法正确的是() A.带回家中 B.随意倾倒在水槽中 C.倒入指定的容器中 D.倒回原试剂瓶中 2、下列仪器中,不能在酒精灯上直接加热的是() A.试管 B.烧杯 C.蒸发皿 D.燃烧匙 3、下列仪器中,不能作为反应容器的是() A.烧杯 B.集气瓶 C.量筒 D.试管 4、下列仪器中,可与试管、烧杯、蒸发皿归为一类的是() A.集气瓶 B.漏斗 C.量筒 D.锥形瓶 5、下列基本操作中不正确的是() A.用酒精灯火焰的外焰部分给物质加热 B.过滤时,液体应沿着玻璃棒流入过滤器 C.一般用药匙或镊子取用固体药品 D.使用天平时,用手取用砝码 6、给试管里的物质加热时,切勿让试管底部接触灯芯,这是因为() A.将使酒精燃烧不完全 B.易使酒精灯熄灭 C.灯芯温度低,易使已受热后的试管受热不均匀而破裂 D.灯芯温度高,易使试管底部溶化 7、下列基本实验操作正确的是() A.用药品不定量时,固体一般去1~2克 B.安装过滤器时,滤纸边缘高于漏斗口 C.蒸发食盐水,用玻璃棒不断搅拌液体 D.酒精灯不用的时候,一定要盖上灯帽 8、下列实验操作,不正确的是() A. 向试管里倾倒液体试剂时,试剂瓶标签应朝向手心 B. 实验剩余的药品必须放回原瓶 C. 取液后的滴管,放置时应保持橡胶乳头在上 D. 用量筒量取液体时,视线要与量筒内凹液面的最低处保持水平 9、下列仪器中,能在酒精灯火焰上直接加热的是() A. 集气瓶 B. 量筒 C. 试管 D. 烧杯

10、用量筒量取液体时,某同学操作如下:量筒放平稳,面对刻度,仰视液体凹液面最低处,读数为19mL。倾倒出一部分液体,又俯视液体凹液面最低处,读数为11mL。这位同学取出液体的体积是() A. 8mL B. 大于8mL C. 小于8mL D. 无法判断 11、下列说法中正确的是() A. 可以用燃着的酒精灯去点燃另一个酒精灯 B. 实验室可以用品尝味道的方法鉴别一些无毒性的试剂 C. 实验过程中,不慎将稀硫酸溅到衣服上,可以不作处理 D. 不小心将酒精灯碰倒在实验台上,致使酒精溢出燃烧,可以立即用湿抹布盖灭 12、下列实验操作①用量筒量取液体时,将量筒放在水平的桌面上,右手握试剂瓶(标签向掌心)慢慢倒入量筒中②用完滴瓶上的滴管要用水冲洗后放回滴瓶中③实验室里两个失去标签的试剂瓶中均装有白色固体,为了分清哪瓶是白砂糖,哪瓶是食盐,可取少量固体品尝味道。其中()A. 只有①正确 B. 只有②正确 C. 只有③正确 D. 全部错误 13、下列化学实验基本操作正确的是() A. 取块状固体药品时,如果没有镊子可以用手拿 B. 应该用酒精灯的外焰给物质加热 C. 有腐蚀性的药品应放在纸上称量 D. 用胶头滴管滴加液体时,其下端应紧贴试管内壁 14、用托盘天平称量3.6克食盐,称量中发现指针向右偏转,此时应() A. 加砝码 B. 加药品 C. 减药品 D. 调节螺丝向左旋 15、量取8毫升稀硫酸应选用的仪器是() A. 50毫升量筒 B. 50毫升量筒和胶头滴管 C. 10毫升量筒 D. 10毫升量筒和胶头滴管 16、下列各组仪器,能用来加热液体药品的一组是() A. 量筒、蒸发皿、烧杯 B. 量筒、蒸发皿、试管 C. 集气瓶、蒸发皿、试管 D. 烧杯、蒸发皿、试管 17、在进行过滤操作时,除了使用铁架台、烧杯、玻璃棒以外,还需要的仪器是() A. 酒精灯 B. 托盘天平 C. 蒸发皿 D. 漏斗

图像处理实验二图像增强

实验二图像的增强 一、实验目的 1)掌握在计算机上进行直方图统计,以及直方图均衡化、线性变换的图像增强的方法 2)掌握在计算机上进行图象平滑、图象锐化特别是中值滤波平滑及拉普拉斯算子锐化 的方法 二、实验要求 1)显示图像(cameraman.tif)及灰度直方图。 2)对指定图像(cameraman.tif)进行直方图均衡化和线性变换,将原始图像及增强 后的图像都显示于屏幕上,比较增强的效果。 3)对指定图像(lena.bmp)加入椒盐噪声,然后进行邻域平滑、中值滤波,将原始图 像及平滑后的图像都显示于屏幕上,比较效果。 4)对指定图像(lena.bmp)进行锐化(简单梯度算法、ROBERT算子,Prewitt边缘算 子和拉普拉斯算子),将原始图像及锐化后的图像都显示于屏幕上,比较锐化的效果。 三、实验仪器设备及软件 HP D538、MATLAB 四、实验原理 以自己的语言结合课堂笔记进行总结,要求过程推导清晰明了。 五、实验步骤及程序 实验步骤、程序流程、实验源程序和注释齐全 实验源程序: (1). 显示图像(cameraman.tif)及灰度直方图: I=imread('cameraman.tif'); subplot(121); imshow(I); title('原始图象'); subplot(122); imhist(I); title('灰度直方图')实验结果与分析

(2)对指定图像(cameraman.tif)进行直方图均衡化和线性变换,将原始图像及增强后的图像都显示于屏幕上,比较增强的效果。 I=imread('cameraman.tif'); subplot(221); imshow(I); title('原始图象'); I1=histeq(I); subplot(222); imshow(I1); title('原始图象均衡化'); subplot(223); imshow(I); title('原始图象'); I2=imadjust(I); subplot(224); imshow(I1); title('原始图象线性变化'); (3)对指定图像(lena.bmp)加入椒盐噪声,然后进行邻域平滑、中值滤波,将原始图像及平滑后的图像都显示于屏幕上,比较效果。

实验2 Idrisi图像处理软件的基本操作

实习2 Idrisi图像处理软件的基本操作 实验目的:初步认识Idrisi的界面、功能和软件的基本操作方法 实习内容: 1.设置工作环境 2.察看各类图件的属性 3.显示各类栅格图、矢量图及叠加显示 4.了解调色板及符号库的使用 5.学习制作图例 6.DEM的立体显示 7.图像的直方图分析 实验步骤: 基本知识 1 Environ / list / describe 2 文件系统(img / doc, vec / dvc, val, smp / sm0 / sm1 / sm2) 3 display (Brazilfc 图像/ color composit 调色版) 注:TM432合成图 4 display (awrajas 矢量图/ idrpoly) 调色板及图例 5 overlay(dec88c图像/NDVI16调色板+ country矢量图) 6 显示dec88c(ndvi16及grey256) 7 显示etdem + etprov 并变换其调色板(idrisi256和grey256) 8 显示affaosol 图像(qual256) 9 显示dec88c(gray16)和affaosol图的图例(了解*.doc文件的图例标注) 10 图例设计(调色板/ 符号库/ 图例文字) 矢量图件的叠加显示 11 显示矢量图clarkblk / idrpoly 12 在图上叠加clarkbld / idr16 和clarkbd2 / idrpoly dem的三维显示及其与影像的叠加 13 ortho显示relief 14 ortho叠加显示njolodem和njolofc / grey256 (务必选中use drape image) 15 显示afsurf图像/grey16 16 histogram显示直方图(h87tm1/ h87tm2/ h87tm4) 思考题: 1 工作环境如何设定 2 调色板有何重要作用 3 矢量栅格的叠加显示方法 4 直方图\ 图例\ 1

数字图像处理实验 实验二

实验二MATLAB图像运算一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验步骤 1.图像的加法运算-imadd 对于两个图像f x,y和 (x,y)的均值有: g x,y=1 f x,y+ 1 (x,y) 推广这个公式为: g x,y=αf x,y+β (x,y) 其中,α+β=1。这样就可以得到各种图像合成的效果,也可以用于两张图像的衔接。说明:两个示例图像保存在默认路径下,文件名分别为'rice.png'和'cameraman.tif',要求实现下图所示结果。 代码: I1 = imread('rice.png'); I2 = imread('cameraman.tif'); I3 = imadd(I1, I2,'uint8'); I4 = imadd(I1, I2,'uint16'); subplot(2, 2, 1), imshow(I1), title('?-ê?í???1'); subplot(2, 2, 2), imshow(I2), title('?-ê?í???2'); subplot(2, 2, 3), imshow(I3), title('8??í?????ê?'); subplot(2, 2, 4), imshow(I4), title('16??í?????ê?'); 结果截图:

2.图像的减法运算-imsubtract 说明: 背景图像可通过膨胀算法得到background = imopen(I,strel('disk',15));,要求实现下图所示结果。 示例代码如下: I1 = imread('rice.png'); background = imerode(I1, strel('disk', 15)); rice2 = imsubtract(I1, background); subplot(2, 2, 1), imshow(I1), title('?-ê?í???'); subplot(2, 2, 2), imshow(background), title('±3?°í???'); subplot(2, 2, 3), imshow(rice2), title('′|àíoóμ?í???'); 结果截图: 3.图像的乘法运算-immultiply

链表实现多项式相加实验报告

实验报告 课程名称:数据结构 题目:链表实现多项式相加 班级: 学号: 姓名: 完成时间:2012年10月17日

1、实验目的和要求 1)掌握链表的运用方法; 2)学习链表的初始化并建立一个新的链表; 3)知道如何实现链表的插入结点与删除结点操作; 4)了解链表的基本操作并灵活运用 2、实验内容 1)建立两个链表存储一元多项式; 2)实现两个一元多项式的相加; 3)输出两个多项式相加后得到的一元多项式。 3、算法基本思想 数降序存入两个链表中,将大小较大的链表作为相加后的链表寄存处。定义两个临时链表节点指针p,q,分别指向两个链表头结点。然后将另一个链表中从头结点开始依次与第一个链表比较,如果其指数比第一个小,则p向后移动一个单位,如相等,则将两节点的系数相加作为第一个链表当前节点的系数,如果为0,则将此节点栓掉。若果较大,则在p前插入q,q向后移动一个,直到两个链表做完为止。 4、算法描述 用链表实现多项式相加的程序如下: #include #include #include struct node{ int exp; float coef; struct node*next; };

void add_node(struct node*h1,struct node*h2); void print_node(struct node*h); struct node*init_node() { struct node*h=(struct node*)malloc(sizeof(struct node)),*p,*q; int exp; float coef=1.0; h->next=NULL; printf("请依次输入多项式的系数和指数(如:\"2 3\";输入\"0 0\"时结束):\n"); p=(struct node*)malloc(sizeof(struct node)); q=(struct node*)malloc(sizeof(struct node)); for(;fabs(coef-0.0)>1.0e-6;) { scanf("%f %d",&coef,&exp); if(fabs(coef-0.0)>1.0e-6) { q->next=p; p->coef=coef; p->exp=exp; p->next=NULL; add_node(h,q); } } free(p); free(q); return(h); } void add_node(struct node*h1,struct node*h2) { struct node*y1=h1,*y2=h2; struct node*p,*q; y1=y1->next; y2=y2->next; for(;y1||y2;) if(y1) { if(y2) { if(y1->expexp) y1=y1->next; else if(y1->exp==y2->exp) { y1->coef+=y2->coef; if(y1->coef==0)

实验1_基于MATLAB的图像基本操作

第1次实验基于MATLAB的图像基本操作 二、实验内容和要求: 1.实现图像Baboon.bmp(MATLAB自带)的读入(可使用imread)和显示(可使用imshow)操作,代码加上足够的注释,需要建立一个M文件实现。 I=imread('F:\标准图像\Baboon.bmp');//读入图像 imshow(I);//显示图像 2.编程实现将一幅RGB图像转换为二值图像,并在一个窗口同时显示处理过程中得到的每一个图像和原图像,同时需要给图像加上标题。(原始数据可以是任意的RGB图像)。需要新建一个M文件实现。 figure,subplot(1,3,1),imshow(I(:,:,1)),title('R'); subplot(1,3,2),imshow(I(:,:,2)),title('G'); subplot(1,3,3),imshow(I(:,:,3)),title('B'); 3.计算图象统计参数: 读取图像(文件名为‘cameraman.tif’); 最大值 最小值 均值 K=imread('cameraman.tif'); d_max=max(K(:)) d_min=min(K(:)) d_mean=mean(K(:)) 4.利用帮助系统了解im2double,imresize,image函数的作用和语法,并利用这些函数处理已知图像pout.tif(MATLAB自带)并显示处理前后效果。 J=imread('pout.tif'); J1=im2double(J); figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),imshow(J1),title('After') J2=imresize(J,0.3); figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),imshow(J2),title('After') figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),image(J);title('After') 1

图像处理实验报告

实验报告 实验课程名称:数字图像处理 班级:学号:姓名: 注:1、每个实验中各项成绩按照10分制评定,每个实验成绩为两项总和20分。 2、平均成绩取三个实验平均成绩。

2016年 4 月18日 实验一 图像的二维离散傅立叶变换 一、实验目的 掌握图像的二维离散傅立叶变换以及性质 二、实验要求 1) 建立输入图像,在64?64的黑色图像矩阵的中心建立16?16的白色矩形图像点阵, 形成图像文件。对输入图像进行二维傅立叶变换,将原始图像及变换图像(三维、中心化)都显示于屏幕上。 2) 调整输入图像中白色矩形的位置,再进行变换,将原始图像及变换图像(三维、中 心化)都显示于屏幕上,比较变换结果。 3) 调整输入图像中白色矩形的尺寸(40?40,4?4),再进行变换,将原始图像及变 换图像(三维、中心化)都显示于屏幕上,比较变换结果。 三、实验仪器设备及软件 HP D538、MATLAB 四、实验原理 傅里叶变换作为分析数字图像的有利工具,因其可分离性、平移性、周期性和共轭对称性可以定量地方分析数字化系统,并且变换后的图像使得时间域和频域间的联系能够方便直观地解决许多问题。实验通过MATLAB 实验该项技能。 设),(y x f 是在空间域上等间隔采样得到的M ×N 的二维离散信号,x 和y 是离散实变量,u 和v 为离散频率变量,则二维离散傅里叶变换对一般地定义为 ∑∑ -=-=+-= 101 )],( 2ex p[),(1),(M x N y N yu M xu j y x f MN v u F π,1,0=u …,M-1;y=0,1,…N-1 ∑∑-=-=+=101 )],( 2ex p[),(),(M x N y N uy M ux j v u F y x f π ,1,0=x …,M-1;y=0,1,…N-1

实验一图像处理基本操作

实验一图像处理基本操作 一、 实验目的 1、熟悉并掌握在MATLAB中进行图像类型转换及图像处理的基本操作。 2、熟练掌握图像处理中的常用数学变换。 二、实验设备 1、计算机1台 2、MATLAB软件1套 3、实验图片 三、实验原理 1、数字图像的表示和类别 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f在坐标(x,y)处的幅度称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由若干个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术也适用于彩色图像处理,方法是分别处理三幅独立的分量图像即可。 图像关于x和y坐标以及幅度连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和幅度。将坐标值数字化称为取样,将幅度数字化称为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和幅度都是有限且离散的量时,称该图像为数字图像。 作为MATLAB基本数据类型的数组十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。 图1 图像的采样和量化 图1 采样和量化的过程 根据图像数据矩阵解释方法的不同,MATLAB把其处理为4类: ?亮度图像(Intensity images) ?二值图像(Binary images) ?索引图像(Indexed images) ? RGB图像(RGB images) (1) 亮度图像 一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。若亮度图像的像素都是uint8类型或uint16类型,则它们的整数值范围分别是[0,255]和[0,65536]。若图像是double 类型,则像素取值就是浮点数。规定双精度double型归一化亮度图像的取值范围是[0 1]。 (2) 二值图像 一幅二值图像是一个取值只有0和1的逻辑数组。而一幅取值只包含0和1的uint8

中考化学复习专题十八 常见仪器与基本实验操作

专题十八常见仪器与基本实验操作 命题点1常见仪器的识别及用途 1. (2019苏州)下列仪器对应的名称正确的是() 2. (2019淄博改编)下列化学仪器对应的名称书写正确的是() 3. (2019株洲)取用粉末状固体化学药品时,应使用的仪器是() A. 滴管 B. 研钵 C. 药匙 D. 镊子 4. (2019德州)下面是实验室常见的玻璃仪器,其中能够在酒精灯上直接加热的是() 5. (2019益阳)实验室中,药品的存放必须符合一定的规则。下列存放药品时所选择的仪器及存放方式正确的是() 6. (2019贵阳)化学是一门以实验为基础的科学。下列仪器用途不正确的是() 7. (2019牡丹江改编)如图为实验室中常见的仪器,请回答相关问题。 (1)写出下列仪器的名称:②________,②________,②________。

(2)量取一定体积的液体,需要用到的仪器是________(填序号)。 (3)②不能直接加热,加热时需要______________________。 (4)②的用途是______________________。 命题点2基本实验操作及注意事项 8. (2019南京)过滤实验中,不需要使用的仪器是() A. 烧杯 B. 漏斗 C. 玻璃棒 D. 蒸发皿 9. (2019德阳)下列实验基本操作正确的是() A. 用湿润的pH试纸测某待测液的pH B. 胶头滴管用后平放在桌面上 C. 在量筒中配制溶液 D. 一般用药匙或镊子取用固体药品 10. (2019铜仁改编)下列化学实验基本操作,正确的是() A. 加热后的试管立即用冷水冲洗 B. 蒸发食盐水时,待蒸发皿中固体全部析出时停止加热 C. 滴管使用后都要立即用清水冲洗干净 D. 将玻璃管插入带孔橡胶塞时要先把玻璃管口用水润湿 11. (2019河南)下列图示的实验操作中正确的是() 12. (2019陕西)下列实验基本操作正确的是() 13. (2019北京)下列操作不正确 ...的是() 14. (2019安徽改编)下列实验操作正确的是()

数字图像处理实验2冈萨雷斯.

实验二灰度直方图及直方图均衡化 一、 实验目的: 1、直方图显示 2、计算并绘制图像直方图 3、直方图均衡化二、实验内容 学习使用函数 imhist(, histeq(, bar(, stem(, plot(, imadjust(,及 title, axis, set 等描述图像工具。 1、直方图显示 显示图 Fig0354(a(einstein_orig.tif,标注图的题目为:EINSTEIN ,作出其直方图,调整参数如下图所示: EINSTEIN

4 2、分别用 bar 和 stem 函数显示直方图 由 h=imhist( 获得直方图;分别用 bar 和 stem 显示直方图 h ,并通过参数调整,改变直方图的显示方式。用 axis 设置轴的最大、最小值(例如:axis([0 255 0 15000];),用 set 设置显示坐标的间隔(例如:set(gca,’xtick ’, 0:50:255)。作出如下的直方图: 00 50

100 150 200 250 3、用 plot 函数显示直方图要求同 2. 12000 1000080006000400020000 0 50 100 150 200 250 300 4、用 imadjust( 函数调整图像对比度,并用 imhist( 查看调整前后直方图的变化。 3 . 2 . 1 . 0 . 4

5、用 histeq( 进行直方图均衡化,并用 imhist( 查看均衡化前后直方图的变化。

4 三、实验要求 将本实验的 10 个图用 MATLAB 显示到屏幕上。程序: i=imread('Fig0354(a(einstein_orig.tif'; imshow(i; title('EINSTEIN'; figure; imhist(i; title('直方图';

单链表的插入和删除实验报告

. 实验一、单链表的插入和删除 一、目的 了解和掌握线性表的逻辑结构和链式存储结构,掌握单链表的基本算法及相关的时间性能分析。 二、要求: 建立一个数据域定义为字符串的单链表,在链表中不允许有重复的字符串;根据输入的字符串,先找到相应的结点,后删除之。 三、程序源代码 #include"stdio.h" #include"string.h" #include"stdlib.h" #include"ctype.h" typedef struct node //定义结点 { char data[10]; //结点的数据域为字符串 struct node *next; //结点的指针域 }ListNode; typedef ListNode * LinkList; // 自定义LinkList单链表类型 LinkList CreatListR1(); //函数,用尾插入法建立带头结点的单链表

ListNode *LocateNode(); //函数,按值查找结点 void DeleteList(); //函数,删除指定值的结点void printlist(); //函数,打印链表中的所有值 void DeleteAll(); //函数,删除所有结点,释放内存 //==========主函数============== void main() { char ch[10],num[10]; LinkList head; head=CreatListR1(); //用尾插入法建立单链表,返回头指针printlist(head); //遍历链表输出其值 printf(" Delete node (y/n):");//输入“y”或“n”去选择是否删除结点scanf("%s",num); if(strcmp(num,"y")==0 || strcmp(num,"Y")==0){ printf("Please input Delete_data:"); scanf("%s",ch); //输入要删除的字符串 DeleteList(head,ch); printlist(head); } DeleteAll(head); //删除所有结点,释放内存 } //==========用尾插入法建立带头结点的单链表

实验二、PhotoShop的基本操作

实验二、PhotoShop的基本操作 【实验主要内容】 掌握PhotoShop图像大小的修改和图像的裁切,掌握标尺、参考线、网格等视图辅助工具的使用。 【本实验主要知识点】 修改图像;裁切图像;使用辅助工具。 【主要实验步骤】 一、修改图像 1、修改图像大小 (1)从菜单中选择【图像】│【图像大小】命令,会弹出“图像大小”对话框,如图2-1所示。练习在其中改变图像大小。 图2-1 “图像大小”对话框 (2)像素大小:可以通过修改图像的宽度和高度像素值和百分比来改变图像的 大小,并可随时看出图像改变前后的大小变化。 (3)文档大小:可以通过修改图像的宽度和高度厘米、英寸、点等以及图像的 分辨率来改变图像的大小。 (4)缩放样式:该选项用于在调整图像大小时是否按比例缩放。 (5)约束比例:该选项用于在设置图像宽度和高度时进行等比例调整。 (6)重定图像像素:该选项用于在调整图像大小时像素数目是否随图像大小协 调变化。 (7)设置完毕后单击“好”按钮即可确定图像大小的改变。 2、修改画布大小 (1)从菜单中选【图像】│【画布大小】,打开“画布大小”对话框,如图2-2 所示,练习在其中改变画布大小。 图2-2 “画布大小”对话框

(2)当前大小:其中显示了当前图像画布的实际大小。 (3)新大小:可以通过修改宽度和高度厘米、像素、英寸、百分比来改变图像画布的大小,其中“相对”选项可以改变以上是绝对值还是相对值,“定位”选项区可以调整画布修改后图像位于画布的新具体位置。 (4)画布扩展颜色:设置画布多余部分的色彩。 二、裁切图像 1、在工具箱中使用裁切工具。 2、移动鼠标指针到图像窗口中,按下左键并进行拖曳,释放左键后,会出现一个四周有8个控制点的裁切范围。如图2-3所示。 图2-3 选择裁切范围 3、选定裁切范围后,使用控制点对裁切区域进行平移、缩放、旋转等操作。如图2-4所示。 图2-4 变换裁切范围 4、最后在裁切区内双击鼠标左键,或在工具栏中单击按钮,即可完成裁切工作。 三、使用辅助工具 1、标尺 (1)从菜单中选择【视图】│【标尺】命令,可以在图像窗口的顶部和左 边显示标尺,如图2-5所示。

相关文档
相关文档 最新文档