河南工业大学实验报告

合集下载

大学_计算机控制技术实验报告河南工业大学3

大学_计算机控制技术实验报告河南工业大学3

实验三最少拍控制算法研究班级:自动F1203班姓名:蔡申申学号:201223910625一、实验目的1.学习并熟悉最少拍控制器的设计和算法;2.研究最少拍控制系统输出采样点间纹波的形成;3.熟悉最少拍无纹波控制系统控制器的设计和实现方法。

二、实验设备1.THBCC-1型信号与系统•控制理论及计算机控制技术实验平2.THBXD数据采集卡一块(含37芯通信线、16芯排线和USB电缆线各1根)3.PC机1台(含软件“THBCC-1”)三、实验内容1.设计并实现具有一个积分环节的二阶系统的最少拍控制。

2.设计并实现具有一个积分环节的二阶系统的最少拍无纹波控制,并通过混合仿真实验,观察该闭环控制系统输出采样点间纹波的消除。

四、实验原理在离散控制系统中,通常把一个采样周期称作一拍。

最少拍系统,也称为最小调整时间系统或最快响应系统。

它是指系统对应于典型的输入具有最快的响应速度,被控量能经过最少采样周期达到设定值,且稳态误差为定值。

显然,这样提出了较为苛刻的要求,即其极点应位于Z平对系统的闭环脉冲传递函数)(z面的坐标原点处。

1.最少拍控制算法计算机控制系统的方框图为:图7-1最少拍计算机控制原理方框图根据上述方框图可知,有限拍系统的闭环脉冲传递函数为:)()(1)()()()()(z HG z D z HG z D z R z C z +==φ (1) )(1)()(11)()()(1z z HG z D z R z E z e φφ-=+== (2) 由(1) 、(2)解得:)()()()(z HG z z z D e φφ= 随动系统的调节时间也就是系统误差)(1kt e 达到零或为一恒值所需的时间,由Z 变换定义可知:⋅⋅⋅⋅⋅⋅++⋅⋅⋅⋅⋅⋅+++==--∞=--∑k k k Z kT e Z T e Z T e e Z kT e Z E )()2()()0()(1)1210111(1有限拍系统就是要求系统在典型的输入信号作用下,当N K ≥时,)(1kT e 恒为零或恒为一常量。

大学 - 计算机控制技术实验报告河南工业大学4

大学 - 计算机控制技术实验报告河南工业大学4

大学 - 计算机控制技术实验报告河南工业大学4 实验四单闭环直流调速系统班级:自动F1203班姓名:蔡申申学号:202123910625 一、实验目的1.掌握用PID控制规律的直流调速系统的调试方法; 2.了解PWM调制、直流电机驱动电路的工作原理。

二、实验设备1.THBCC-1型信号与系统控制理论及计算机控制技术实验平台 2.THBXD数据采集卡一块(含37芯通信线、16芯排线和USB电缆线各1根)3.PC机1台(含软件“THBCC-1”)三、实验原理直流电机在应用中有多种控制方式,在直流电机的调速控制系统中,主要采用电枢电压控制电机的转速与方向。

功率放大器是电机调速系统中的重要部件,它的性能及价格对系统都有重要的影响。

过去的功率放大器是采用磁放大器、交磁放大机或可控硅(晶闸管)。

现在基本上采用晶体管功率放大器。

PWM功率放大器与线性功率放大器相比,有功耗低、效率高,有利于克服直流电机的静摩擦等优点。

PWM调制与晶体管功率放大器的工作原理: 1.PWM的工作原理图13-1 PWM的控制电路上图所示为SG3525为核心的控制电路,SG3525是美国Silicon General公司生产的专用。

PWM控制集成芯片,其内部电路结构及各引脚如图13-2所示,它采用恒频脉宽调制控制方案,其内部包含有精密基准源、锯齿波振荡器、误差放大器、比较器、分频器和保护电路等。

调节Ur的大小,在A、B两端可输出两个幅度相等、频率相等、相位相互错开180度、占空比可调的矩形波(即PWM信号)。

它适用于各开关电源、斩波器的控制。

2.功放电路直流电机PWM输出的信号一般比较小,不能直接去驱动直流电机,它必须经过功放后再接到直流电机的两端。

该实验装置中采用直流15V的直流电压功放电路驱动。

3.反馈接口在直流电机控制系统中,在直流电机的轴上贴有一块小磁钢,电机转动带动磁钢转动。

磁钢的下面中有一个霍尔元件,当磁钢转到时霍尔元件感应输出。

河南工业大学《大学计算机基础及office应用》实验报告-实验单元三

河南工业大学《大学计算机基础及office应用》实验报告-实验单元三

河南工业大学《大学计算机基础及office应用》实验报告专业班级:学号:姓名:实验单元三PPT的操作和应用及综合性实验实验七PPT演示文稿的建立和编辑实验时间:【实验目的】掌握PPT演示文稿的建立与基本编辑方法。

【实验环境】安装了Windows 7操作系统和PPT应用软件的PC机。

【实验内容】完成如下操作(参照教材256页的实训项目6-1)。

1. 创建“***个人简介.pptx”并保存,按照图5-57所示的样文输入并编辑,对演示文稿应用主题。

第一张幻灯片采用“标题幻灯片”版式,标题为“你的名字”,副标题为“你的专业名称”;2. 第二张幻灯片介绍自己的基本情况,图片为你的照片;3. 第三张幻灯片标题为“爱好和特长”,内容为自己的爱好和特长;4. 第四张幻灯片标题为“专业介绍”,介绍自己的专业情况;5. 第五张幻灯片标题为“学院简介”,要求使用艺术字;组织结构图为学院的组织结构图(即学院下设哪些系,各个系下设哪些专业);6. 第六张幻灯片标题为“2014年春季学期课程表”,内容为你的本学期课程表(只需列出4门);另外,在幻灯片上插入自动更新日期与页脚,并且标题幻灯片中不显示。

7.设置动画效果:第一个自选图形自左侧切入,随后第二个自选图形百叶窗方式切入,第三个自选图形自动自底部切入,其他对象的动画效果自定。

8.设置放映方式为:第一张幻灯片:向右下揭开;第二张幻灯片:盒状展开;第二张幻灯片:从内到外垂直分割,其他幻灯片的放映方式自定。

【实验步骤】(此项由学生自己完成)1. 创建“***个人简介.pptx”并保存,按照图5-57所示的样文输入并编辑,对演示文稿应用主题。

第一张幻灯片采用“标题幻灯片”版式,标题为“你的名字”,副标题为“你的专业名称”;步骤是:2. 第二张幻灯片介绍自己的基本情况,图片为你的照片;步骤是:3. 第三张幻灯片标题为“爱好和特长”,内容为自己的爱好和特长;步骤是:4. 第四张幻灯片标题为“专业介绍”,介绍自己的专业情况;步骤是:5. 第五张幻灯片标题为“学院简介”,要求使用艺术字;组织结构图为学院的组织结构图(即学院下设哪些系,各个系下设哪些专业);步骤是:6. 第六张幻灯片标题为“2014年春季学期课程表”,内容为你的本学期课程表(只需列出4门);步骤是:另外,在幻灯片上插入自动更新日期与页脚,并且标题幻灯片中不显示。

大学_计算机控制技术实验报告河南工业大学2

大学_计算机控制技术实验报告河南工业大学2

实验二数字PID调节器算法的研究班级:自动F1203班姓名:蔡申申学号:201223910625 一、实验目的1.学习并熟悉常规的数字PID控制算法的原理;2.学习并熟悉积分分离PID控制算法的原理;3.掌握具有数字PID调节器控制系统的实验和调节器参数的整定方法。

二、实验设备1.THBCC-1型信号与系统•控制理论及计算机控制技术实验平2.THBXD数据采集卡一块(含37芯通信线、16芯排线和USB电缆线各1根)3.PC机1台(含软件“THBCC-1”)三、实验内容1.利用本实验平台,设计并构成一个用于混合仿真实验的计算机闭环实时控制系统;2.采用常规的PI和PID调节器,构成计算机闭环系统,并对调节器的参数进行整定,使之具有满意的动态性能;3.对系统采用积分分离PID控制,并整定调节器的参数。

四、实验原理在工业过程控制中,应用最广泛的控制器是PID控制器,它是按偏差的比例(P)、积分(I)、微分(D)组合而成的控制规律。

而数字PID控制器则是由模拟PID控制规律直接变换所得。

在PID控制规律中,引入积分的目的是为了消除静差,提高控制精度,但系统中引入了积分,往往使之产生过大的超调量,这对某些生产过程是不允许的。

因此在工业生产中常用改进的PID算法,如积分分离PID算法,其思想是当被控量与设定值偏差较大时取消积分控制;当控制量接近给定值时才将积分作用投入,以消除静差,提高控制精度。

这样,既保持了积分的作用,又减小了超调量。

五、实验步骤1、实验接线1.1.按图4-1和图4-2连接一个二阶被控对象闭环控制系统的电路;1.2.该电路的输出与数据采集卡的输入端AD1相连,电路的输入与数据采集卡的输出端DA1相连;1.3.待检查电路接线无误后,打开实验平台的电源总开关,并将锁零单元的锁零按钮处于“解锁”状态。

图4-1数-模混合控制系统的方框图图4-2被控二阶对象的模拟电路图2、脚本程序运行2.1.启动计算机,在桌面双击图标“THBCC-1”,运行实验软件;2.2. 顺序点击虚拟示波器界面上的“”按钮和工具栏上的“”按钮(脚本编程器);2.3.在脚本编辑器窗口的文件菜单下点击“打开”按钮,并在“计算机控制算法VBS\计算机控制技术基础算法\数字PID调器算法”文件夹下选中“位置式PID”脚本程序并打开,阅读、理解该程序,然后点击脚本编辑器窗口的调试菜单下“步长设置”,将脚本算法的运行步长设为100ms;2.4.点击脚本编辑器窗口的调试菜单下“启动”;用虚拟示波器观察图4-2输出端的响应曲线;2.5.点击脚本编辑器的调试菜单下“停止”,利用扩充响应曲线法(参考本实验附录4)整定PID控制器的P、I、D及系统采样时间Ts等参数,然后再运行。

河南工业大学实验报告_实验一 线性结构(一)——线性表的操作

河南工业大学实验报告_实验一 线性结构(一)——线性表的操作

xxxx大学实验报告课程名称数据结构实验项目实验一线性结构(一)——线性表的操作院系信息学院计类系专业班级计类1501 姓名学号指导老师日期批改日期成绩一实验目的熟练掌握线性表的顺序和链式存储结构及相关典型操作。

二实验内容及要求实验内容:1. 完成线性表顺序存储结构的若干典型算法。

2. 下列两题二选一:(1)完成线性表链式存储结构的若干典型算法。

(2)有一个单链表的第一个结点指针为head,编写一个函数将该单链表逆置,即最后一个结点变成第一个结点,原来倒数第二个结点变成第二个结点。

在逆置中不能建立新的单链表。

实验要求:1.键盘输入数据;2.屏幕输出运行结果。

3.要求记录实验源代码及运行结果。

4.运行环境:VC++6.0三实验过程及运行结果#include<iostream>#include<stdio.h>#include<stdlib.h>using namespace std;typedef int ElemType;typedef struct LNode{ElemType data;struct LNode *next;}LNode;typedef LNode *LinkList;void CreatList(LinkList &L,int n){LinkList p,q;L=new LNode;L->next=NULL;q=L;cout<<"请从小到大输入链表的元素:";for (int i=1;i<=n;i++){p=new LNode;cin>>p->data;p->next=q->next;q->next=p;q=q->next;}cout<<"所创建得的递增有序链表为:";p=L->next;for (int j=1;j<=n;j++){cout<<p->data<<" ";p=p->next;}cout<<endl;}void CreatC(LinkList &A,LinkList &B,LinkList &C,int n) {LinkList q;LinkList pa,pb,pc,pre=NULL;pa=A->next;pb=B->next;while (pa||pb){if (!pb||((pa&&pb)&&(pa->data<pb->data))) {pc=pa;q=pa->next;pa->next=pre;pa=q;}else{pc=pb;q=pb->next;pb->next=pre;pb=q;}pre=pc;}cout<<"合并后的递减有序链表为:";C=A;A->next=pc;pa=pc;for (int j=1;j<=n;j++){cout<<pa->data<<" ";pa=pa->next;}cout<<endl;getchar();}void main(){LinkList A,B,C;int n,m,k;cout<<"请输入链表***A***的长度:"; cin>>n;CreatList(A,n);cout<<"请输入链表***B***的长度:"; cin>>m;CreatList(B,m);k=m+n;CreatC(A,B,C,k);system(0);getchar();}四调试情况、设计技巧及体会线性表的典型算法包括删除,查找和插入。

河南工业大学protel实验报告

河南工业大学protel实验报告

实验1 原理图设计环境画原理图实验一实验目的1 熟练PROTEL99se的原理图编辑环境2 掌握常用管理器,菜单的使用,电气规则检查3 掌握元器件等的调用,属性含义。

二实验内容教材 1.1,1.2,1.3,1.4环境熟悉2.1,2.2工具条对象,器件调用2.3,2.4 菜单使用,元件属性修改4.2练习1-练习8注意连线:从器件的端点开始到端点结束,不要多余的线按空格旋转元件;PAGEDOWN PAGEUP缩放放好原件的原理图编号报告文件编辑好属性的原理电路图实验2 原理图练习实验一实验目的1 掌握层次电路图设计方法2 了解层次电路原理图各图之间的关系3 熟悉顶层图,子图的生成方法二实验内容教材2.4.4层次电路图菜单使用参考33页(5)(6)注意1 在顶层电路图中,图纸符号(Sheet symbol)代表一张子图纸,子图是通过图纸符号入口(sheet symbol entry)与外界连接的2子图中的端口(Port)与顶层图中的图纸符号入口(sheet symbol entry)的不同。

端口(Port)是在生成子图时候自动生成的。

3 层次电路图出现多张图纸,需要修改图纸编号(number),修改方法:Design-Options-Organizations…顶层电路图Wenya分电路Zhengliu分电路图实验3 元件图绘制实验一实验目的1 掌握元件图绘制基本步骤方法2 了解多元件芯片含义3 多元元件芯片元件图的绘制及其在原理图中的调用方法4 理解元件库的作用,库的创建与修改二实验内容1教材:3.4画元件图示例2教材87页,练习9 画多元件芯片U9及其在原理图中的调用注意:库文件(*.LIB)的建立,库中可以存放多个元件元件的添加:Tools—New Component多元件芯片的子件的添加:Tools—New Part放置管脚最后的D触发器练习九电路实验4 电路板图环境实验一实验目的1 理解电路版图与原理图之间的关系2 理解网络表生成及其作用,网络表所包含的内容。

河南工业大学试验报告_试验三查找和排序一——查找

河南工业大学试验报告_试验三查找和排序一——查找

xxx大学实验报告 )——查找查找和排序(一课程名称数据结构实验项目实验三1501 计类信息学院计类系专业班级院系号学姓名期日指导老师绩成批改日期实验目的一1.掌握哈希函数——除留余数法的应用; 2. 掌握哈希表的建立; 3. 掌握冲突的解决方法; 4. 掌握哈希查找算法的实现。

实验内容及要求二哈希,实验内容:已知一组关键字(19,14,23,1,68,20,84,27,55,11,10,79)。

实现该哈希表的散列,并m=16函数定义为:H(key)=key MOD 13, 哈希表长为。

计算平均查找长度(设每个记录的查找概率相等)使用线性探测再散列或链2. 1. 哈希表定义为定长的数组结构;实验要求:输出等概率散列完成后在屏幕上输出数组内容或链表;4. 地址法解决冲突;3.完成散列后,输入关键字完成查找操作,要分别测查找下的平均查找长度;5. 试查找成功与不成功两种情况。

可尝试使用不同解决不同解决冲突的方法会使得平均查找长度不同,注意:(根据完成情况自选,但至少能使用一种方法冲突的办法,比较平均查找长度。

解决冲突)实验过程及运行结果三#include<stdio.h>#include <stdlib.h>#include <string.h>#define hashsize 16#define q 13int sign=2;typedef struct Hash{值域 // int date; //标记 int sign;}HashNode;线性冲突处理void compare(HashNode H[],int p,int i,int key[]) // { p++; if(H[p].sign!=0) { sign++;compare(H,p,i,key);}elseH[p].date=key[i];H[p].sign=sign; sign=2;}}void Hashlist(HashNode H[],int key[]){ int p;for(int i=0;i<12;i++) {p=key[i]%q; if(H[p].sign==0) { H[p].date=key[i];H[p].sign=1;}else compare(H,p,i,key);}}查找冲突处理int judge(HashNode H[],int num,int n) //{n++; if(n>=hashsize) return 0; if(H[n].date==num) {位置\t 数据\n); 牰湩晴尨 printf(%d\t %d\n\n,n,H[n].date);return 1;}elsejudge(H,num,n);}int search(char num,HashNode H[]) //查找{ int n;n= num % q;if(H[n].sign==0) {牰湩晴尨失败);return 0; } if(H[n].sign!=0&&H[n].date==num) {数据\t 牰湩晴尨位置\n);printf(%d\t %d\n\n,n,H[n].date);} else if(H[n].sign!=0&&H[n].date!=num) {if(judge(H,num,n)==0) return 0;}return 1;}int main(void){ int key[q]={19,14,23,1,68,20,84,27,55,11,10,79}; float a=0;HashNode H[hashsize];for(int i=0;i<hashsize;i++)H[i].sign=0;Hashlist(H,key);数据\n\n);\t 牰湩晴尨位置 for(inti=0;i<hashsize;i++){if(H[i].sign!=0){printf(%d\t %d\n,i,H[i].date);else{H[i].date=0;printf(%d\t %d\n,i,H[i].date);} } int num;'查找完成):\n); 请输入查找数值(‘-1牰湩晴尨for(int i=0;;i++){scanf(%d,&num);if(num==-1)break;if(search(num,H)==0)不存在\n); 牰湩晴尨 } for(inti=0;i<hashsize;i++){printf(%d ,H[i].sign);a=a+H[i].sign; } printf(\%2.0f,a);%0.2f\n,a/12);平均查找长度:牰湩晴尨return 0;}四调试情况、设计技巧及体会首先得确定哈希函数,虽然冲突是无法避免的,但是我们应该选择合适的函数,减少冲突,最简单的可以采用开放定止法,出现冲突后,以原地址为基点再次寻找下一个地址。

河南工业大学实验报告

河南工业大学实验报告

河南工业大学实验报告课程_ 软件应用技术_____ _实验名称___ 图形、文本和位图_院系__ 信息科学与工程学院 _专业班级___ _计科0701_姓名____ 徐晶_ _ 学号__ _ _ 20074140129_____一.实验内容编写一个应用程序,实现画线的动态定位操作,如下图所示。

当鼠标在视图客户区移动时,会出一个大大的光标(由水平线和垂直线组成),光标的右上角的小窗口显示出当前的鼠标位置,当单击鼠标左键时,在屏幕上出现由小十字点标志,此时再移动鼠标,从当前鼠标位置到前面一个点将绘制一条直线,且该直线随鼠标位置移动而变化,就像一根橡皮条一样,且光标右上角的小窗口显示出这条直线的长度和角度,再单击鼠标左键一条直线被绘制出来,…,直到按ESC键结束,一条折线就绘制出来了。

为了保证在视图需要更新时,这些线条仍然存在,需要将这些点保存下来,然后再重新绘出。

二.实验准备(1)在学习完教材第7章内容后进行本次实验(2)阅读教材中关于本次上机所需要的程序。

三.实验步骤(1),创建工作文件夹,启动VC6.0,创建一个默认的单文档应用程序Ex-A7。

(2),A,光标的生成和实现:在Ex-ATView文件中的类声明添加下列成员变量class CEx_A7View : public CView{public:BOOL m_bCursorFirst; // 光标第一次显示标志CPoint m_ptPrevPos; // 上一个点的坐标CPoint m_ptCurPos; // 当前点的坐标B,在CEx-ATView::OnDraw中添加一些清屏代码,并将m_blurSorFirst设为TRUEvoid CEx_A7View::OnDraw(CDC* pDC){CEx_A7Doc* pDoc = GetDocument();ASSERT_V ALID(pDoc);CRect rcClient;GetClientRect( rcClient ); // 获取客户区大小pDC->FillSolidRect( rcClient, RGB( 0,0,0 ) ); // 将客户区清为黑色m_bCursorFirst = TRUE;pDC->SetBkMode( TRANSPARENT ); // 设置透明背景模式}C,为CEx-ATView类添加绘制光标函数的成员函数DrawCurSorvoid CEx_A7View::DrawCursor(CDC *pDC, CPoint pt){CRect rcClip;pDC->GetClipBox( rcClip ); // 当前裁剪区大小CPen pen( PS_SOLID, 1, RGB( 128, 128, 128 ) ); // 灰色画笔CPen *oldPen = pDC->SelectObject( &pen ); // 选入画笔// 设置XOR光栅操作模式int nOldROP = pDC->SetROP2( R2_XORPEN );// 绘制水平线pDC->MoveTo( rcClip.left, pt.y );pDC->LineTo( rcClip.right, pt.y );//绘制垂直线pDC->MoveTo( pt.x, rcClip.top );pDC->LineTo( pt.x, rcClip.bottom );// 恢复原来的光栅模式pDC->SetROP2( nOldROP );// 恢复原来的画笔}D,用MFC classWizard为CEx-ATView类添加WM_MouSEMOVE消息映射,并在映射函数中添加相应代码。

河南工业大学实验报告_实验二 非线性结构(一)——树

河南工业大学实验报告_实验二 非线性结构(一)——树

河南工业大学实验报告课程名称数据结构实验项目实验二非线性结构(一)——树院系信息学院计科系专业班级计科1401姓名赵振学号 201416010121 指导老师范艳峰日期 2015-6-1 批改日期成绩一实验目的1.掌握二叉树的建立与递归遍历算法。

2.理解哈夫曼树及其应用;掌握生成哈夫曼树的算法;哈夫曼编码;哈夫曼译码。

二实验内容及要求实验内容:下列两题二选一:1.实现二叉树的建立与递归遍历算法;2.建立huffman编码树;编码指定字符串;译码指定码流为字符串。

实验要求:题目1:键盘输入数据;屏幕输出运行结果。

题目2:键盘输入数据;屏幕输出运行结果。

运行显示结果为:输入一个字符串,生成码流;输入码流,译码为字符串。

三实验过程及运行结果1.本次实验的主要内容是建立二叉树,进行遍历查找,以及求二叉树的深度:具体实验过程如下:#include <stdio.h>//头文件#include <stdlib.h>typedef struct BiTNode{char data;struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;//定义结点类型int countleaves(BiTree bt,int count); BiTree CreateBiTree();int btnodedepth (BiTNode *b);void PreOrder(BiTree T);BiTree findnode(BiTree b,char x);void main()//主函数{BiTree Ta,m;int count ;int n,k=0;char x;printf("请输入数据:\n");Ta=CreateBiTree();printf("先序遍历:");printf("\n");PreOrder(Ta);count = btnodedepth ( Ta );printf("\n树的高度:%d", count); printf("\n请输入一个字符数据:"); getchar();scanf("%c",&x);m=findnode(Ta,x);if(m!=NULL){printf("\n查找成功!");}else{printf("\n查找失败");}}BiTree CreateBiTree()//创建树{char p;BiTree T;scanf("%c",&p);if(p==' ')T=NULL;else{T=(BiTNode *)malloc(sizeof(BiTNode));//为结点开辟空间 T->data=p;T->lchild=CreateBiTree();T->rchild=CreateBiTree();}return (T);}void PreOrder(BiTree T)//先序{if(T!=NULL){printf("%c ",T->data);PreOrder(T->lchild);PreOrder(T->rchild);}}int btnodedepth (BiTNode *b){int lchilddep ,rchilddep;if(b==NULL){return(0);}else{lchilddep =btnodedepth(b->lchild);rchilddep = btnodedepth(b->rchild);return (lchilddep > rchilddep) ? (lchilddep + 1) : (rchilddep + 1);}}//查找节点BiTree findnode(BiTree b,char x){BiTree p;if(b==NULL){return NULL;}else if(b->data == x){return b;}else{p= findnode(b->lchild,x);if(p!=NULL)return p;elsereturn findnode(b->rchild,x);}}运行结果:四调试情况、设计技巧及体会递归调用程序语句少,运行起来快。

河南工业大学实验报告

河南工业大学实验报告

河南工业大学
《管理信息系统》实验报告
姓名:
学号:
专业班级:
指导教师:
河南工业大学管理学院
实验报告题目:
1、某图书馆图书借阅管理信息系统系统分析
2、学籍管理信息系统系统分析
3、小型超市进、销、存信息系统系统分析
4、图书馆图书管理信息系统系统分析
实验报告内容要求:
【实验步骤】
1.系统项目概述
概要说明所选管理项目的目的,业务范围,主要任务,项目的重要性,必要性和可行性。

2.项目工作计划
说明所选管理项目开发计划,要确定项目各部分的开发任务,人员分工,估计开发进度,其中开发任务包括各部分的系统子项,,进度采用表格或GANTT图描述。

3.管理业务流程分析
通过对所选项目业务调查分析,介绍其的典型组织机构,管理功能及业务流程,给出项目的主要业务流程,利用“业务流程图”或“表格分配图”描述.。

4.数据流程图
明确数据流程的调查与分析过程,绘制数据流程图,编制数据字典;根据业务流程分析结果,结合项目的任务,功能及特点,画出“数据流程图”。

5.数据字典及E-R图
根据“数据流程图”,编写相应的“数据字典”,根据以上分析结果,画出E-R图。

6.总结和体会
独立完成上述内容,并提交书面系统分析报告,简要说明项目开发中成功和失败的经验教训。

河南工业大学实验报告_实验二 非线性结构(二)——图

河南工业大学实验报告_实验二 非线性结构(二)——图

河南工业大学实验报告课程名称数据结构实验项目实验二非线性结构(二)——图院系信息学院计科系专业班级计科1401 姓名赵振学号 201416010121 指导老师范艳峰日期 2013.5.17 批改日期成绩一实验目的1.掌握图的邻接矩阵和邻接链表存储结构。

2.掌握图的建立、遍历、最小生成树等典型操作。

二实验内容及要求实验内容:(自选一题)1.建立图的邻接矩阵或邻接链表存储结构,并在对应存储结构上实现图的递归遍历操作。

2.在邻接矩阵存储结构上,完成最小生成树的操作。

实验要求:1. 根据所选题目,用C语言编写程序源代码。

2. 源程序须编译调试成功,独立完成。

三实验过程及运行结果本次试验是采用邻接表的方法建立图,然后进行深度优先遍历具体实现结如下://算法功能:采用邻接表存储结构建立无向图#include <stdio.h>#include <stdlib.h>#define OK 1#define NULL 0#define MAX_VERTEX_NUM 20 // 最大顶点数typedef int Status; //函数的类型,其值是函数结果状态代码typedef char VertexType;typedef int VRType;typedef int InforType;typedef struct ArcNode{int adjvex; //该边所指的顶点的位置struct ArcNode *nextarc; //指向下一条边的指针int weight; //边的权}ArcNode; //表的结点typedef struct VNode{VertexType data; //顶点信息(如数据等)ArcNode *firstarc; //指向第一条依附该顶点的边的弧指针}VNode, AdjList[MAX_VERTEX_NUM]; //头结点typedef struct ALGraph{AdjList vertices;int vexnum, arcnum; //图的当前顶点数和弧数}ALGraph;//返回顶点v在顶点向量中的位置int LocateVex(ALGraph G, char v){int i;for(i = 0; v != G.vertices[i].data && i < G.vexnum; i++) ;if(i >= G.vexnum)return -1;return i;}//构造邻接链表Status CreateUDN(ALGraph &G){int j;ArcNode *s, *t;printf("输入无向图顶点数: ");scanf("%d", &G.vexnum);printf("输入无向图边数: ");scanf("%d", &G.arcnum);getchar();for(int i = 0; i < G.vexnum; i++){printf("输入第%d个顶点信息:", i+1);scanf("%c", &G.vertices[i].data); //构造顶点向量 G.vertices[i].firstarc = NULL;getchar();}char v1, v2;for(int k = 0; k < G.arcnum; k++){printf("输入第 %d 条边依附的顶点v1: ", k+1);scanf("%c", &v1);getchar();printf("输入第 %d 条边依附的顶点v2: ", k+1);scanf("%c", &v2);getchar();int i = LocateVex(G, v1);int j = LocateVex(G, v2); //确定v1 , v2在G中的位置s = (ArcNode*) malloc (sizeof(ArcNode));t = (ArcNode*) malloc (sizeof(ArcNode));s->adjvex = j; //该边所指向的顶点的位置为js->nextarc = G.vertices[i].firstarc;G.vertices[i].firstarc =s;t->adjvex = i; //该边所指向的顶点的位置为jt->nextarc = G.vertices[j].firstarc;G.vertices[j].firstarc =t;}return OK;}Status PrintAdjList(ALGraph &G){ArcNode *p;printf("%4s%6s%12s\n", "编号", "顶点", "相邻边编号");for(int i = 0; i < G.vexnum; i++){printf("%4d%6c", i, G.vertices[i].data);for(p = G.vertices[i].firstarc; p; p = p->nextarc) printf("%4d", p->adjvex);printf("\n");}return OK;}int main(){ALGraph G;CreateUDN(G);PrintAdjList(G);return 0;}运行结果如下:四调试情况、设计技巧及体会图的邻接表表示不唯一,这是因为在每个顶点对应的单链表中,各边节点的链接次序可以是任意的,取决于建立邻接表的算法以及边的输入次序,另外对于有N个顶点和E条边的无向图,其邻接表有N个顶点节点和2e个边节点。

河南工业大学EDA技术 实验报告实验五 用LPM设计8位数控分频器和4位乘法器

河南工业大学EDA技术 实验报告实验五  用LPM设计8位数控分频器和4位乘法器

河南工业大学EDA技术实验报告专业电科班级姓名学号 2 实验地点6526+ 6215 实验日期-11-4 成绩评定一、实验项目实验五用LPM设计8位数控分频器和4位乘法器二、实验目的掌握LPM模块的参数设置方法以及设计和应用方法。

三、实验原理对于高速测控系统,影响测控速度最大的因素可能是,在测得必要的数据并经过复杂的运算后,才能发出控制指令。

因此数据的运算速度决定了此系统的工作速度。

为了提高运算速度,可以用多种方法来解决,如高速计算机、纯硬件电路、ROM查表式运算器等。

用高速计算机属于软件解决方案,用纯硬件运算器属于硬件解决方案,而ROM属于查表式运算解决方案。

数控分频器的功能要求为:若在其输入端给定不同的数据,其输出脉冲具有相应的对输入时钟的分频比。

设计流程是首先按照原理图输入的设计步骤,通过元件输入窗在原理图编辑窗中调入兆功能块,并按图连接起来,其中计数器LPM-COUNTER模块的参数设置可按照以下介绍的方法进行。

硬件乘法器有多种实现方法,相比之下,由高速RAM构成乘法表方式的乘法表方式的乘法器的运算速度最快。

8位数控分频器电路原理图用LPM_ROM设计的4位乘法器原理图DFF的VHDL代码:(1)8位数控分频器数控分频器的功能要求为:若在其输入端给定不同的数据,其输出脉冲具有相应的对输入时钟的分频比。

(2)4位乘法器硬件乘法器有多种实现方法,相比之下,由高速RAM构成乘法表方式的乘法表方式的乘法器的运算速度最快。

一个4×4bit查表式乘法器乘法表文件如下图所示;四、仿真结果及分析下图即为8位数控分频器的仿真结果,仿真参数设置时具体设置界面如下图所示,波形图如图;下图即为乘法器的仿真结果,仿真参数设置时具体设置界面如下图所示;五、硬件验证过程及结果分析数控分频器的硬件验证时通过数码管来观察分频器的数据变化情况。

4位乘法器的硬件测试引脚并连接至插槽,通过数码管来观察数据相乘后的结果。

河南工业大学 C语言实验报告1

河南工业大学 C语言实验报告1

河南工业大学C语言实验报告专业班级:材料类12级01班学号:201226910117 姓名:程永刚指导老师:李歆评分:一、实验题目:循环结构程序设计二、实验目的:熟练掌握while,do—while及for语句的格式、执行过程及循环嵌套的使用三、实验内容:P140 习题3,4,83.输入两个正整数m和n,求最大公约数和最小公倍数。

4.输入一行字符,分别统计出其中英文字母、空格、数字、和其他字符的个数。

8.输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。

例如,153=13+53+33.四、实验环境:(计算机系统硬件/软件环境)计算机系统Microsoft Windows XP Professional 版本2002 Service Pack 3文档书写环境WPS Word2012 编译环境Visual C++ 6.0五、实验步骤:(具体程序及调试过程)3#include <stdio.h>int main ( ){int p,r,n,m,temp;printf("请输入两个正整数n,m:");scanf("%d,%d,",&n,&m);if (n<m){temp=n;n=m;m=temp;}p=n*m;while(m!=0){r=n%m;n=m;m=r;}printf("他们的最大公约数为:%d\n",n);printf("他们的最小公倍数为:%d\n",p/n);return 0;}4 #include <stdio.h>int main(){char c;int letters=0,space=0,digit=0,other=0;printf("请输入一行字符:\n");while((c=getchar())!='\n'){if (c>='a' && c<='z' || c>='A' && c<='Z')letters++;else if (c==' ')space++;else if (c>='0' && c<='9')digit++;elseother++;}printf("字母数:%d\n空格数:%d\n数字数:%d\n其它字符数:%d\n",letters,space,digit,other);return 0;}8.#include <stdio.h>int main(){int i,j,k,n;printf("parcissus numbers are ");for (n=100;n<1000;n++){i=n/100;j=n/10-i*10;k=n%10;if (n==i*i*i + j*j*j + k*k*k)printf("%d ",n);}printf("\n");return 0;}六、实验结果:(程序运行结果)3.请输入两个正整数m,n:4.请输入一行字符:8. Parc issus numbers are 153 370 371 407Press any key to continue七、实验体会:(200字以内)通过本次实验,我更加熟练掌握while,do—while及for语句的格式、执行过程及循环嵌套的使用。

河南工业大学编译原理实验报告词法分析

河南工业大学编译原理实验报告词法分析

河南⼯业⼤学编译原理实验报告词法分析河南⼯业⼤学实验报告课程名称编译原理 _ 实验项⽬实验⼀词法分析院系____信息科学与⼯程学院____ 专业班级计科F姓名学号指导⽼师⽇期批改⽇期成绩⼀.实验⽬的1.深⼊理解有限⾃动机及其应⽤2.掌握根据语⾔的词法规则构造识别其单词的有限⾃动机的⽅法3.基本掌握词法分析程序的开发。

⼆.实验内容及要求编制⼀个能够分析三种整数、标识符和主要关键字的词法分析器。

实验要求:1根据以下的正规式,编制正规⽂法,画出状态图标识符<字母>(<字母>|<数字字符>)*⼗进制整数0 | (1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)*⼋进制整数0(1|2|3|4|5|6|7)(0|1|2|3|4|5|6|7)*⼗六进制整数0x(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)*关键字if then else while do2根据状态图,设计词法分析函数int scan( ),完成以下功能:1) 从键盘读⼊数据,分析出⼀个单词。

2) 返回单词种别(⽤整数表⽰),3) 返回单词属性(不同的属性可以放在不同的全局变量中)。

3编写测试程序,反复调⽤函数scan( ),输出单词种别和属性。

三.实验过程1.单词符号分类单词符号是程序语⾔的基本语法单位,具有具体的语法意义。

C 语⾔的单词符号通常可以分为以下5 类:保留字:if 、else、do、while 、case、switch标识符:letter(letter|digit)*整型常数:digit (digit )*⼗六进制数:ox(digit)*运算符:+、-、* 、/、>、>= 、<、<=、==、=界符:,、;、(、)、{ 、} 、:2.词法分析程序输出单词符号的形式词法分析程序的输⼊是源程序字符串,输出是与源程序等价的单词符号序列,并且所输出的单词符号通常表⽰成如下的⼆元式:(单词种别,单词⾃⾝的值)注:+ 、- 、* 、>= 、>等符号分别⽤9到25之间的整数表⽰种别码,具体见程序运⾏结果显⽰。

河南工业大学现代控制理论实验报告

河南工业大学现代控制理论实验报告

现代控制理论实验报告实验一线性系统状态空间表达式的建立以及线性变换专业班级:自动化1505 姓名:施明梁学号:0525一实验目的1. 掌握线性定常系统的状态空间表达式。

学会在MATLAB中建立状态空间模型的方法。

2. 掌握传递函数与状态空间表达式之间相互转换的方法。

学会用MATLAB 实现不同模型之间的相互转换。

(字符和数字全部用Times New Roman)3. 掌握状态空间表达式的相似变换。

掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。

学会用MATLAB进行线性变换。

二实验内容1、已知系统的传递函数(1)建立系统的TF或ZPK模型。

(2)将给定传递函数用函数ss( )转换为状态空间表达式。

再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。

(3)将给定传递函数转换为对角标准型或约当标准型。

再将得到的对角标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。

(4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。

再将得到的能控标准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。

2. 已知系统的状态空间表达式(a)uxx⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=1651[]xy11=(c)uxx⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=35721331121214[]xy11=(1)建立给定系统的状态空间模型。

用函数eig( ) 求出系统特征值。

用函数tf( ) 和zpk( )将这些状态空间表达式转换为传递函数,记录得到的传递函数和它的零极点。

比较系统的特征值和极点是否一致,为什么(2)用函数canon( )将给定状态空间表达式转换为对角标准型。

用函数eig( )求出系统特征值。

比较这些特征值和(1)中的特征值是否一致,为什么再用函数tf( )和zpk( )将对角标准型或约当标准型转换为传递函数。

河南工业大学实验报告

河南工业大学实验报告

河南工业大学实验报告(2014~2015学年-第1学期)一、实验目的:1. 了解结构化程序设计的基本思想;2. 掌握使用工程组织多个程序文件的方法。

3. 掌握函数嵌套的使用方法。

4.掌握递归函数的编程方法。

二.编程环境Windows8.1Codeblock三.实验要求及内容:1.编写一个函数,利用参数传入一个3位数number,找出101~number 之间所有满足下列两个条件的数:它是完全平方数,又有两位数字相同,如144、676等,函数返回找出这样的数据的个数,并编写主函数。

输入输出示例:Enter a number :150 count = 2①源代码②测试用例Enter a number :150Count = 2;③实验结果2. 用递归函数计算x n的值。

输入输出示例:Enter x:2Enter n:3Root = 8.00①源代码②测试用例Enter x:2Enter n:3Root = 8.00③实验结果3. 用递归方法编写求斐波那契数列项的函数,返回值为整型,并写出相应的主函数。

斐波那契数列的定义为:f(0)= 0,f(1)=1)+ f(n-1)(n>1)①源代码②实验用例输入10输出55③实验结果如下图4. 输入两个整数m和n(m≥0且n≥0),输出函数Ack(m,n)的值。

Ack(0,n)= n+1Ack(m,0)= Ack(m-1,1)Ack(m,n)= Ack(m-1,Ack(m,n-1))(m>0且n>0)输入输出示例:Enter x:2Enter y:3Ackerman(2,3)= 9①源代码如下图②测试用例输入x : 2输入y: 3输出Ackerman (2,3) = 9③实验结果如下图5*(选做):输入一个正整数n,将其转换为二进制后输出。

要求定义并调用函数dectobin(n),它的功能是输出n的二进制。

例如,调用dectobin(10),①源代码②测试用例输入20输出10100③实验结果如下图6. 输入n(n<10)个整数,统计其中素数的个数。

河南工业大学《大学计算机基础及office应用》实验报告-实验单元一

河南工业大学《大学计算机基础及office应用》实验报告-实验单元一

河南工业大学《大学计算机基础及office应用》实验报告专业班级:学号:姓名:实验单元一Windows 7和Word的操作及应用实验一Windows 7基本操作实验时间:【实验目的】1、熟练掌握文件和文件夹的创建及删除。

2、掌握文件和文件夹的编辑操作。

3、掌握查看文件的视图方式,能够显示隐藏文件及文件的扩展名。

4、掌握库的新建及将文件夹添加到库中。

5、掌握通过控制面板设置PC机的用户帐户、硬件和声音、日期和时间、输入法以及系统和安全的方法。

【实验环境】安装了Windows 7操作系统的PC机。

【实验内容】教材88页的实训项目2-1和92页的实训项目2-2。

(要求:创建的Word文件的名字以学生本人的姓名命名)【实验步骤】(此项由学生自己完成,参照教材93页实训步骤)【实验结果】(用Alt+PrtScn组合键以截图的方法呈现,参照教材94页实训结果)【实验体会】(至少150字,总结本课所学内容遇到的困难及收获。

)实验二Word文档的基本编辑实验时间:【实验目的】1、掌握文档的建立、保存与打开方法。

2、掌握文本内容的基本编辑方法。

3、掌握文档的排版方法。

【实验环境】安装了Windows 7操作系统和Word 2010应用软件的PC机。

【实验内容】由学生自选一篇带标题....的文章,按如下要求完成对文档的编辑...的含多个段落与排版(参照教材146页的实践3-1)。

1、设置文档纸张大小为A4纸。

2、设置文档上下边距为2.4厘米,左右边距为2.5厘米。

3、为标题设置样式“标题1”。

4、为文章第一行的文字设置红色的双下划线。

5、将正文的第一段文字设为“小四”、“楷体_GB2312”。

6、复制第一段的文档格式,将其格式复制到其他段落,减少重复操作。

7、设置正文首字下沉,字体为“华文彩云”,下沉3行,距正文“0厘米”。

8、正文所有文字大纲级别设为“正文文本”,左、右缩进都为“0”,段前、段后间距为“0”,首行缩进为“2字符”,行距为“固定值20磅”。

现代控制理论实验报告河南工业大学

现代控制理论实验报告河南工业大学

河南工业大学现代控制理论实验报告姓名:朱建勇班级:自动1306学号: 0601现代控制理论实验报告专业: 自动化 班级: 自动1306 姓名: 朱建勇 学号: 0601 成绩评定:一、实验题目:线性系统状态空间表达式的建立以及线性变换二、实验目的1. 掌握线性定常系统的状态空间表达式。

学会在MATLAB 中建立状态空间模型的方法。

2. 掌握传递函数与状态空间表达式之间相互转换的方法。

学会用MATLAB 实现不同模型之间的相互转换。

3. 熟悉系统的连接。

学会用MATLAB 确定整个系统的状态空间表达式和传递函数。

4. 掌握状态空间表达式的相似变换。

掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。

学会用MATLAB 进行线性变换。

三、实验仪器个人笔记本电脑 Matlab R2014a 软件四、实验内容1. 已知系统的传递函数 (a) )3()1(4)(2++=s s s s G(b) 3486)(22++++=s s s s s G(c) 61161)(232+++++=z z z z z z G(1)建立系统的TF 或ZPK 模型。

(2)将给定传递函数用函数ss( )转换为状态空间表达式。

再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。

(3)将给定传递函数用函数jordants( )转换为对角标准型或约当标准型。

再将得到的对角标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。

(4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。

再将得到的能控标准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。

v1.0 可编辑可修改2. 已知系统的状态空间表达式(a) u x x⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=106510 []x y 11=(b) u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=7126712203010 []111=y (c) u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=357213********* []x y 101=(d) u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=011310301100 []x y 210-= (1)建立给定系统的状态空间模型。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

河南工业大学实验报告
课程数字图像处理实验名称图像噪声处理与复原
院系____信息科学与工程学院专业班级__ 电科1001 _____ 姓名____李海权__ 学号___201048360117________ 指导老师:王贵财日期 2013.6.6
实验四图像噪声处理与复原
1 实验目的
掌握噪声模拟和图像滤波函数的使用方法
了解图像复原的Matlab实现方法
2 实验内容
1.模糊与噪声
2.对图像‘flowers.tif’分别采用运动PSF和均值滤波PSF进行模糊。

clear all;
close all;
I=imread('G:\lia.jpg');
figure(1);
imshow(I);
title('原始图像');
I=I(350+[1:600],300+[1:600],:); %剪切图像
figure(2);
subplot(3,3,1);
imshow(I);title('截取部分原始图像');
len=30; %运动位移
theta=10; %运动角度
PSF=fspecial('motion',len,theta);
blurred=imfilter(I,PSF,'circular','conv');
subplot(3,3,2);
imshow(blurred); title('模糊图像');
%%%%%%%% 维纳滤波复原%%%%%%
wnr1=deconvwnr(blurred,PSF); %真实PSF
subplot(3,3,3);
imshow(wnr1);title('真实PSF 复原图像');
%非真实PSF
wnr2=deconvwnr(blurred,fspecial('motion',2*len,theta));
subplot(3,3,4);
imshow(wnr2);title('非真实PSF 复原图像');
%非真实PSF
wnr3=deconvwnr(blurred,fspecial('motion',len,2*theta));
subplot(3,3,5);
imshow(wnr3);title('非真实PSF 复原图像');
%使用维纳滤波复原函数deconvwnr 复原模糊噪声图像
noise=0.1*randn(size(I));
BlurredNoisy=imadd(blurred,im2uint8(noise));
subplot(3,3,6);
imshow(BlurredNoisy);title('增加模糊噪声图像');
wnr4=deconvwnr(BlurredNoisy,PSF);
subplot(3,3,7);
imshow(wnr4);title('增加模糊噪声真实PSF 复原图像');
%设置信噪比的复原结果
NSR=sum(noise(:).^2)/sum(im2double(I(:)).^2); %计算信噪比wnr5=deconvwnr(BlurredNoisy,PSF,NSR);
subplot(3,3,8);
imshow(wnr5);title('设置信噪比的复原图像');
%设置自相关函数的复原结果
NP=abs(fftn(noise)).^2; %噪声能量谱密度
NCORR=fftshift(real(ifftn(NP))); %噪声自相关函数
IP=abs(fftn(im2double(I))).^2; %图像能量谱密度
ICORR=fftshift(real(ifftn(IP))); %图像自相关函数
wnr6=deconvwnr(BlurredNoisy,PSF,NCORR,ICORR);
subplot(3,3,9);
imshow(wnr6);title('设置自相关函数的复原图像'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
figure(3);
subplot(2,2,1);
I=imread('G:\lia.jpg');
imshow(I)
H=fspecial('motion',50,45); %运动PSP
motionblur=imfilter(I,H);
subplot(2,2,2);
imshow(motionblur)
H=fspecial('disk',10); %均值滤波PSP
averageblur=imfilter(I,H);
subplot(2,2,3);
imshow(averageblur);
J=imnoise(motionblur,'salt & pepper');
subplot(2,2,4);
imshow(J); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
3、实验报告内容
1叙述实验过程;
2提交实验的原始图像和结果图像,并对结果进行比较。

4、实验截图及程序代码
3、实验仪器
1计算机;
2 MATLAB程序;
3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

5、实验过程及实验结果
1)输入实验程序
2)运行代码,实验结果,提交实验的原始图像和结果图像,并对结果进行比较:原始图像:
A) 模糊与噪声:(1) 对图像‘flowers.tif’分别采用运动PSF和均值滤波PSF进行模糊。

(2) 在上述模糊图像上再添加噪声。

B) 维纳滤波复原:(1) 使用维纳滤波复原函数deconvwnr复原无噪声模糊图像。

(2) 使用维纳滤波复原函数deconvwnr复原模糊噪声图像。

(3) 设置信噪比和相关函数的维纳滤波复原。

5、实验总结,感悟
结果分析:,采用维纳滤波恢复可以取得比较好的效果,这个算法可以使估计的点扩散函数值PSF更加接近它的真实值。

在我们知道模糊图像的点扩展函数的情况下,可以调用常规的图像复原算法;而现实里还会遇见不知道点扩展函数的情况,这个时候我们就可以利用盲卷积复原算法。

它是利用原始图像模糊,同时进行清晰图像的恢复和点扩展函数计算
的一种方法,因此,盲卷积复原算法的优点就是,对失真情况还未知的情形下,仍然能够操作恢复模糊图像。

感悟:实现对受到噪声等因素所干扰的数字图像其恢复的效果和原始图像相比还有一定的差距。

建立在该方法的基础上,已经有不少新的恢复算法不断地被提出,而且使得对数字图像的恢复有了越来越好的效果。

恢复的图像存在一定的“环”,这些环是由图像灰度变换较大的部分或图像边界产生的。

在图像恢复处理中使用的方法很多,要按照图像的情况做具体分析,然后再决定采用哪种方法进行图像恢复。

相关文档
最新文档