计算机图像处理课程设计报告

计算机图像处理课程设计报告
计算机图像处理课程设计报告

编号:

北京工商大学

计算机图像处理课程设计(报告)

院(系):计算机学院

班级:微机024班

学号:021*******

姓名:欧阳锦林

指导教师:赫建强

成绩:

实践地点:东区科研楼2层计算机学院机房

实践时间:2005年元月4~6日上午8:30~11:30:下

午1:50~4:50

2005 年1 月7 日

计算机图像处理课程设计报告

——微机024班15号欧阳锦林

一、内容提要:

本软件是用VisualStudio6.0制作而成,利用了MFC库。运行此可执行文件后即可使用,使用方法和所有的windows窗口程序一样的方便,注意:本软件还只是支持256色图像的处理,你可以用本软件附带的测试图片来进行试验。

本此软件是由我在图像处理实验课的基础上做了一些优化工作而成,除了以前的功能,主要是增加了查看直方图和生成哈夫曼编码压缩文件功能。

并对压缩算法做了全面改进,使之不仅简洁,而且易懂,效率也有所提高。

二、目录:

正文:

1.设计目的:

2.设计题目:

3.设计要求:

4.设计内容与步骤:

a)方案:

b)数据结构:

c)待解决的问题:

d)算法与实现:

e)软件的调试

f)框图:

课程设计体会

参考文献

三、正文:

a)设计目的:

1、加深对计算机图像处理课程理论方面的理解。

2、掌握计算机图像处理课程的应用。

3、掌握用哈夫曼编码无损压缩文件的方法。

b)设计题目:

图像哈夫曼无损预测编码

c)设计要求:

编制出能够对图像进行无损预测编码的程序。要求用户随机打开一幅图像;用鼠标从菜单选择无损预测编码即可将所打开的图像进行无损

预测编码。

d)设计内容与步骤:

1.方案:

拟定方案与步骤如下:

a)将信源符号按其出现概率分布,由大到小排列。

b)将r 个最小概率的信源符号合并成一个符号,这时信源减少

到[N-(r-1)]个,形成一个新的信源A1。

c)将新信源的符号按照步骤a)的要求重新排列,并将最小概率

分布的r 个信源符号按某一次序分别用码符号表示,再按步

骤b) 的做法合并,此时A1缩减到[N-(r-1)-(r-1)]个,形

成一个新的信源A2。

d)依此进行下去,若合并了S次后,总减少的信源符号为(r-1)S

个;若As信源中的符号数:N-(r-1)S>r时,将重复前面过

程;若N-(r-1)S=r时,结束编码过程。

e)从结束处沿授码符号的路线返回依次写出字符的码符号序

列,这就是哈夫曼编码了。

2.数据结构:

二叉树。

3.待解决的问题:

a)怎样定义压缩文件格式才是最优的选择?所谓最优,也就是

要达到压缩文件的大小最小、解压算法最简、文件格式最清

晰等等要求。

b)生成压缩文件后,如何打开压缩文件?我的想法是先生成对

应的BMP文件,再用相同的程序打开生成的文件即可。

c)如何写对应的解压缩算法?这还主要是文件格式的问题。我

试了几种格式的生成压缩文件。我现在的算法我觉得是最为

简洁也是最为易懂的一个算法。

4.算法与实现:

菜单:生成哈夫曼压缩文件...的实现代码为:

void COuyangImageView::OnHumanGen()

{

// 获取文档

COuyangImageDoc* pDoc = GetDocument();

CFileDialog fileDlg(FALSE, "*.HUF", "*.HUF", NULL, "HUFFMAN File (*.HUF)|*.HUF||", this);

fileDlg.m_ofn.Flags |= OFN_FILEMUSTEXIST;

fileDlg.m_ofn.lpstrTitle = "File to save as";

// 保存压缩图象

if (fileDlg.DoModal() == IDOK)

{

// 指向源图像象素的指针

unsigned char * lpSrc;

// 指向DIB的指针

LPSTR lpDIB;

// 指向DIB象素指针

LPSTR lpDIBBits;

// DIB的高度

LONG lHeight;

// DIB的宽度

LONG lWidth;

// 图像每行的字节数

LONG lLineBytes;

// 图像象素总数

LONG lCountSum;

// 循环变量

LONG i;

LONG j;

LONG k;

// 保存各个灰度值频率的数组指针

FLOAT * fFreq;

// 获取当前DIB颜色数目

int iColorNum;

// 锁定DIB

lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());

// 找到DIB图像象素起始位置

lpDIBBits = ::FindDIBBits(lpDIB);

// 获取当前DIB颜色数目

iColorNum = ::DIBNumColors(lpDIB);

// 判断是否是8-bpp位图(这里为了方便,只处理8-bpp位图,其它的可以类推)

if (iColorNum != 256)

{

// 提示用户

MessageBox("目前只支持256色位图哈夫曼编码!", "系统提示" , MB_ICONINFORMATION | MB_OK);

// 解除锁定

::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());

// 返回

return;

}

// 更改光标形状

BeginWaitCursor();

/*******************************************************************

***********

// 开始计算各个灰度级出现的频率

//

// 如果需要对其它序列进行哈夫曼编码,只需改动此处即可,例如,直接赋值:

iColorNum = 8;

fFreq = new FLOAT[iColorNum];

fFreq[0] = 0.04;

fFreq[1] = 0.05;

fFreq[2] = 0.06;

fFreq[3] = 0.07;

fFreq[4] = 0.10;

fFreq[5] = 0.10;

fFreq[6] = 0.18;

fFreq[7] = 0.40;

// 这样就可以对指定的序列进行哈夫曼编码

******************************************************************** **********/

// 分配内存

fFreq = new FLOAT[iColorNum];

// 计算DIB宽度

lWidth = ::DIBWidth(lpDIB);

// 计算DIB高度

lHeight = ::DIBHeight(lpDIB);

// 计算图像每行的字节数

lLineBytes = WIDTHBYTES(lWidth * 8);

// 重置计数为0

for (i = 0; i < iColorNum; i ++)

{

// 清零

fFreq[i] = 0.0;

}

// 计算各个灰度值的计数(对于非256色位图,此处给数组fFreq赋值方法将不同)

for (i = 0; i < lHeight; i ++)

{

for (j = 0; j < lWidth; j ++)

{

// 指向图像指针

lpSrc = (unsigned char *)lpDIBBits + lLineBytes * i + j;

// 指向图像指针

// 计数加1

fFreq[*(lpSrc)] += 1;

}

}

// 计算图像象素总数

lCountSum = lHeight * lWidth;

// 计算各个灰度值出现的概率

for (i = 0; i < iColorNum; i ++)

{

// 计算概率

fFreq[i] /= (FLOAT)lCountSum;

}

// 计算各个灰度级出现的频率结束

/******************************************************************* **********/

// 创建对话框

CDlgHuffman dlgPara;

// 初始化变量值

dlgPara.m_fFreq = fFreq;

dlgPara.m_iColorNum = iColorNum;

m_iColorNum=iColorNum ;

// 显示对话框

// dlgPara.DoModal();

CString str;

// 保存计算中间结果的数组

FLOAT * fTemp;

// 保存映射关系的数组

int * iMap;

// 分配内存

fTemp = new FLOAT[m_iColorNum];

iMap = new int[m_iColorNum];

FLOAT fT;

// 初始化fTemp为m_fFreq

for (i = 0; i < m_iColorNum; i ++)

{

// 赋值

fTemp[i] = fFreq[i];

iMap[i] = i;

}

// 用冒泡法对进行灰度值出现的概率排序,结果保存在数组fTemp中for (j = 0; j < m_iColorNum - 1; j ++)

{

for (i = 0; i < m_iColorNum - j - 1; i ++)

{

if (fTemp[i] > fTemp[i + 1])

{

// 互换

fT = fTemp[i];

fTemp[i] = fTemp[i + 1];

fTemp[i + 1] = fT;

// 更新映射关系

for (k = 0; k < m_iColorNum; k ++)

{

// 判断是否是fTemp[i]的子节点

if (iMap[k] == i)

{

// 改变映射到节点i+1

iMap[k] = i + 1;

}

else if (iMap[k] == i + 1)

{

// 改变映射到节点i

iMap[k] = i;

}

}

}

}

}

////////////////////////////////////////////////////////// // 计算哈夫曼编码表

// 找到概率大于0处才开始编码

for (i = 0; i < m_iColorNum - 1; i ++)

{

// 判断概率是否大于0

if (fTemp[i] > 0)

{

break;

}

}

// 开始编码

for (; i < m_iColorNum - 1; i ++)

{

// 更新m_strCode

for (k = 0; k < m_iColorNum; k ++)

{

// 判断是否是fTemp[i]的子节点

if (iMap[k] == i)

{

// 改变编码字符串

m_strCode[k] = "1" + m_strCode[k];

}

else if (iMap[k] == i + 1)

{

// 改变编码字符串

m_strCode[k] = "0" + m_strCode[k];

}

}

// 概率最小的两个概率相加,保存在fTemp[i + 1]中fTemp[i + 1] += fTemp[i];

// 改变映射关系

for (k = 0; k < m_iColorNum; k ++)

{

// 判断是否是fTemp[i]的子节点

if (iMap[k] == i)

{

// 改变映射到节点i+1

iMap[k] = i + 1;

}

}

// 重新排序

for (j = i + 1; j < m_iColorNum - 1; j ++)

{

if (fTemp[j] > fTemp[j + 1])

{

// 互换

fT = fTemp[j];

fTemp[j] = fTemp[j + 1];

fTemp[j + 1] = fT;

// 更新映射关系

for (k = 0; k < m_iColorNum; k ++)

{

// 判断是否是fTemp[i]的子节点

if (iMap[k] == j)

{

// 改变映射到节点j+1

iMap[k] = j + 1;

}

else if (iMap[k] == j + 1)

{

// 改变映射到节点j

iMap[k] = j;

}

}

}

else

{

// 退出循环

break;

}

}

}

CFileException fe;

CFile file;

CString strPath(fileDlg.GetPathName());

file.Open(strPath, CFile::modeCreate | CFile::modeReadWrite);

// file.Write(m_strCode,sizeof(m_strCode));

// 保存编码后的数据

int loop = 0;

unsigned char Mask[8] = {128, 64, 32, 16, 8, 4, 2, 1};

CString strTemp = "";

unsigned char T = 0;

for (i = 0; i < lHeight; i ++)

{

for (j = 0; j < lWidth; j ++)

{

unsigned char V = *((unsigned char *)lpDIBBits +

lLineBytes * i + j);

strTemp += m_strCode[V];

int len = strTemp.GetLength();

if(len >= 8)

{

for (k = 0; k < 8; k++)

{

if (strTemp.Mid(k, 1) == "1")

T |= Mask[k];

}

file.Write(&T, 1);

loop++;

T = 0;

strTemp = strTemp.Right(strTemp.GetLength() - 8);

}

else

{

}

}

}

// 解除锁定

::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());

// 恢复光标

EndWaitCursor();

CString strMsg;

strMsg = "成功创建压缩文件:try.huff ";

// 提示出错

MessageBox(strMsg, "系统提示", MB_ICONINFORMATION | MB_OK);

}

}

5.软件的总体调试:

调试过程相对顺利,就是开始时在哈夫曼编码的字符串的复制中出了一些问题。后来直接在视图类中添加了这项数据做为视图类的一人成员,问题即得到解决。

6.框图:

哈夫曼压缩文件流程图:

四、课程设计体会:

这几天编程发现了几个有趣的结论:

1、编程的真正吸引力可与玩游戏相媲美

考完英语之后的两天,除了吃饭外没有一刻不是在电脑前的,晚上

睡觉想着它,早上6点起床摆弄它。尤其是在调试时找一个错误用

了几个小时仍未找到却忽然醒悟或找的那一刻的感觉实在太好了。

这种执著与感觉我只有在玩《天龙八部》、《新仙剑一》、《新仙剑二》

触发了找了好久的剧情或走出了困了好久的迷宫的感觉。天地为之

开阔……

2、真正的程序不只是“运行”了!

真正可称得上“好程序”是要满足一大堆的条件的。可读性、健壮

性、可维护性、高效性等等等等条件。其实大部分功能我早就已经

实现了,(只用了两天),但其后的测试、修改、完善、注释、润色

和现在的编写系统文档也用了不少的时间。

3、成功的感觉真好!

当你看着自己把功能一个个实现,把错误一个调试出来,那种感觉

给了自己某种安慰,还有自信!!

4、理论与实践共重。经过一个学期对图像理论的学习,终于有点成效

了,看着自己做出的一个图像处理“软件”,心中真是充满了成功

的感觉,但是在我做课程设计的过程中,我不仅仅看到了实践的重

要性,更看到了理论的基础与必不可少。可以说,如果没有一个学

期以来的理论学习,是不可能有此小小的成功的。

5、几句废话:要提高自己的编程能力,你必须亲自去体验、去设计、

编辑、编译、调试、运行。在此之前,我也以为自己对C++语言已

经比较懂了,可还是遇到了一系列问题,也学到很多东西。而对于

MFC现在也有一个大概的了解,我也正准备深入一点学习MFC的

原理。每一个程序员都是在失败、尝试、失败、尝试与收获中成长

起来的。作为一个团团的计算机学院,大部分学生对计算机竟不大

感兴趣,导致学院人才凋零。我本学识尚浅,无权谈论这些,只是

希望能对大家有所警醒,编程之道漫漫无边,吾将上下而求索.最

后以林锐先生的话来作为自己的追求目标和最后的结束语:以振兴

民族软件产业为己任,作真实、正值、优秀的科技人员!

五、参考文献:

1.何斌、马天宇,等编著,《Visual C++ 数字图像处理》,人民邮电

出版社,2001.4

2.黄贤武、王加俊、李家华著,《数字图像处理与压缩编码技术》,

电子科技出版社,2000.12

3.朱志刚,等译,《数字图像处理》,电子工业出版社,2002.2

中南大学微机课程设计报告交通灯课案

微机课程设计报告

目录 一、需求分析 1、系统设计的意义 (3) 2、设计内容 (3) 3、设计目的 (3) 4、设计要求 (3) 5、系统功能 (4) 二、总体设计 1、交通灯工作过程 (4) 三、设计仿真图、设计流程图 1、系统仿真图 (5) 2、流程图 (6) 3、8253、8255A结构及功能 (8) 四、系统程序分析 (10) 五、总结与体会 (13) 六、参考文献 (13)

一、需求分析 1系统设计的意义: 随着社会经济的发展,城市问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据检测、交通信号灯控制与交通疏通的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。 随着城市机动车量的不断增加,组多大城市如北京、上海、南京等出现了交通超负荷运行的情况,因此,自80年代后期,这些城市纷纷修建城市高速通道,在高速道路建设完成的初期,它们也曾有效地改善了交通状况。然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路耦合处交通状况的制约。所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速通道,缓解主干道与匝道、城市同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通灯的控制方式很多,本系统采用可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现本系统的各种功能。同时,本系统实用性强,操作简单。 2、设计内容 采用8255A设计交通灯控制的接口方案,根据设计的方案搭建电路,画出程序流程图,并编写程序进行调试 3、设计目的 综合运用《微机原理与应用》课程知识,利用集成电路设计实现一些中小规模电子电路或者完成一定功能的程序,以复习巩固课堂所学的理论知识,提高程序设计能力及实现系统、绘制系统电路图的能力,为实际应用奠定一定的基础。针对此次课程设计主要是运用本课程的理论知识进行交通灯控制分析及设计,掌握8255A方式0的使用与编程方法,通从而复习巩固了课堂所学的理论知识,提高了对所学知识的综合应用能力。 4、设计要求: (1)、分别用C语言和汇编语言编程完成硬件接口功能设计; (2)、硬件电路基于80x86微机接口;

数字图像处理 课程设计报告

数字图像处理 课程设计报告 姓名: 学号: 班级: 设计题目:图像处理 教师:赵哲老师 提交日期: 12月29日

一、设计内容: 主题:《图像处理》 详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等), 二、涉及知识内容: 1、二值化 2、各种滤波 3、算法等 三、设计流程图 四、实例分析及截图效果: 运行效果截图: 第一步:读取原图,并显示 close all;clear;clc; % 清楚工作窗口clc 清空变量clear 关闭打开的窗口close all I=imread(''); % 插入图片赋给I imshow(I);% 输出图I I1=rgb2gray(I);%图片变灰度图 figure%新建窗口 subplot(321);% 3行2列第一幅图 imhist(I1);%输出图片

title('原图直方图');%图片名称 一,图像处理模糊 H=fspecial('motion',40); %% 滤波算子模糊程度40 motion运动 q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制q1=rgb2gray(q); imhist(q1); title('模糊图直方图'); 二,图像处理锐化 H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的 qq=imfilter(I,H,'replicate'); qq1=rgb2gray(qq); imhist(qq1); title('锐化图直方图'); 三,图像处理浮雕(来源网络) %浮雕图 l=imread(''); f0=rgb2gray(l);%变灰度图 f1=imnoise(f0,'speckle',; %高斯噪声加入密度为的高斯乘性噪声 imnoise噪声污染图像函数 speckle斑点 f1=im2double(f1);%把图像数据类型转换为双精度浮点类型 h3=1/9.*[1 1 1;1 1 1;1 1 1]; %采用h3对图像f2进行卷积滤波 f4=conv2(f1,h3,'same'); %进行sobel滤波 h2=fspecial('sobel'); g3=filter2(h2,f1,'same');%卷积和多项式相乘 same相同的 k=mat2gray(g3);% 实现图像矩阵的归一化操作 四,图像处理素描(来源网络) f=imread(''); [VG,A,PPG] = colorgrad(f); ppg = im2uint8(PPG); ppgf = 255 - ppg; [M,N] = size(ppgf);T=200; ppgf1 = zeros(M,N); for ii = 1:M for jj = 1:N if ppgf(ii,jj)

计算机仿真课程设计报告

、 北京理工大学珠海学院 课程设计任务书 2010 ~2011 学年第 2学期 学生姓名:林泽佳专业班级:08自动化1班指导教师:钟秋海工作部门:信息学院一、课程设计题目 : 《控制系统建模、分析、设计和仿真》 本课程设计共列出10个同等难度的设计题目,编号为:[0号题]、[1号题]、[2号题]、[3号题]、[4号题]、[5号题]、[6号题]、[7号题]、[8号题]、[9号题]。 学生必须选择与学号尾数相同的题目完成课程设计。例如,学号为8xxxxxxxxx2的学生必须选做[2号题]。 二、课程设计内容 (一)《控制系统建模、分析、设计和仿真》课题设计内容|

! " [2 有波纹控制器Dy(z)和一单位速度信号输入时的最少拍无波纹控制器Dw(z)。具体要求见(二)。 (二)《控制系统建模、分析、设计和仿真》课题设计要求及评分标准【共100分】 , 1、求被控对象传递函数G(s)的MATLAB描述。(2分) 2、求被控对象脉冲传递函数G(z)。(4分) 3、转换G(z)为零极点增益模型并按z-1形式排列。(2分) 4、确定误差脉冲传递函数Ge(z)形式,满足单位加速度信号输入时闭环稳态误差为零和实际 闭环系统稳定的要求。(6分) 5、确定闭环脉冲传递函数Gc(z)形式,满足控制器Dy(z)可实现、最少拍和实际闭环系统稳 定的要求。(8分)

6、根据4、5、列写方程组,求解Gc(z)和Ge(z)中的待定系数并最终求解Gc(z)和Ge(z) 。 (12分) 7、求针对单位加速度信号输入的最少拍有波纹控制器Dy(z)并说明Dy(z)的可实现性。 (3分) ! 8、用程序仿真方法分析加速度信号输入时闭环系统动态性能和稳态性能。(7分) 9、用图形仿真方法(Simulink)分析单位加速度信号输入时闭环系统动态性能和稳态性能。 (8分) 10、确定误差脉冲传递函数Ge(z)形式,满足单位速度信号输入时闭环稳态误差为零和实际 闭环系统稳定的要求。(6分) 11、确定闭环脉冲传递函数Gc(z)形式,满足控制器Dw(z)可实现、无波纹、最少拍和实际 闭环系统稳定的要求。(8分) 12、根据10、11、列写方程组,求解Gc(z)和Ge(z)中的待定系数并最终求解Gc(z)和Ge(z) 。 (12分) 13、求针对单位速度信号输入的最少拍无波纹控制器Dw(z)并说明Dw(z)的可实现性。(3分) 14、用程序仿真方法分析单位速度信号输入时闭环系统动态性能和稳态性能。(7分) 15、用图形仿真方法(Simulink)分析单位速度信号输入时闭环系统动态性能和稳态性能。 & (8分) 16、根据8、9、14、15、的分析,说明有波纹和无波纹的差别和物理意义。(4分) 三、进度安排 6月13至6月14:下达课程设计任务书;复习控制理论和计算机仿真知识,收集资料、熟悉仿真工具;确定设计方案和步骤。 6月14至6月16:编程练习,程序设计;仿真调试,图形仿真参数整定;总结整理设计、 仿真结果,撰写课程设计说明书。 6月16至6月17:完成程序仿真调试和图形仿真调试;完成课程设计说明书;课程设计答 辩总结。 [ 四、基本要求

2013数字图像处理课程设计报告

数字图像处理 课程设计报告 课设题目:彩色图像增强软件学院:信息科学与工程学院专业:电子与信息工程 班级: 1002501 姓名:曾小路 学号: 100250131 指导教师:赵占峰 哈尔滨工业大学(威海) 2013 年12月27日

目录 目录 .......................................................................................................................... I 一. 课程设计任务 (1) 二. 课程设计原理及设计方案 (2) 2.1 彩色图像基础 (2) 2.2 彩色模型 (2) 三. 课程设计的步骤和结果 (6) 3.1 采集图像 (6) 3.2 图像增强 (7) 3.3 界面设计 (9) 四. 课程设计总结 (12) 五. 设计体会 (13) 六. 参考文献 (14)

哈尔滨工业大学(威海)课程设计报告 一. 课程设计任务 1.1设计内容及要求: (1)、独立设计方案,根据所学知识,对由于曝光过度、光圈过小或图像亮度不均匀等情况下的彩色图像进行增强,提高图像的清晰度(通俗地讲,就是图像看起来干净、对比度高、颜色鲜艳)。 (2)、参考photoshop 软件,设计软件界面,对处理前后的图像以及直方图等进行对比显示; (3)、将实验结果与处理前的图像进行比较、分析。总结设计过程所遇到的问题。 1.2参考方案 1、实现图像处理的基本操作 学习使用matlab 图像处理工具箱,利用imread()语句读入图像,例如image=imread(flower.jpg),利用彩色图像模型转换公式,将RGB 类型图像转换为HSI 类型图像,显示各分量图像(如imshow(image)),以及计算和显示各分量图像直方图。 2、彩色图像增强实现 对HSI彩色模型图像的I分量进行对比度拉伸或直方图均衡化等处理,提高亮度图像的对比度。对S分量图像进行适当调整,使图像色彩鲜艳或柔和。 H 分量保持不变。将处理后的图像转换成RGB 类型图像,并进行显示。分析处理图像过程和结果存在的问题。 3、参照“photoshop”软件,设计图像处理软件界面 可设计菜单式界面,在功能较少的情况下,也可以设计按键式界面,视 功能多少而定;参考matlab 软件中GUI 设计,学习软件界面的设计 - 1 -

电子科技大学-数字图像处理-课程设计报告

电子科技大学 数字图像处理课程设计 课题名称数字图像处理 院(系)通信与信息工程学院 专业通信工程 姓名 学号 起讫日期 指导教师

2015年12月15日 目录 摘要: (03) 课题一:图像的灰度级分辨率调整 (04) 课题二:噪声的叠加与频域低通滤波器应用 (06) 课题三:顶帽变换在图像阴影校正方面的应用 (13) 课题四:利用Hough变换检测图像中的直线 (15) 课题五:图像的阈值分割操作及区域属性 (20) 课题六:基于MATLAB?的GUI程序设计 (23)

结束语: (36) 参考文献: (37)

基于MATLAB?的数字图像处理课题设计 摘要 本文首先对数字图像处理的相关定义、概念、算法与常用变换进行了介绍;并通过七个课题实例,借助MATLAB?的图像处理工具箱(Computer Vision System Toolbox)对这些案例逐一实现,包括图像的灰度值调整、图像噪声的叠加、频域低通滤波器、阈值分割、Hough变换等,常用的图像变化与处理;然后通过MATLAB?的GUI程序设计,对部分功能进行模块化整合,设计出了数字图像处理的简易软件;最后给出了软件的帮助文件以及该简易程序的系统结构和m代码。 关键词:灰度值调整噪声图像变换 MATLAB? GUI设计

课题一:图像的灰度级分辨率调整 设计要求: 128,64,32,16,8,4,2,并在同一个figure窗将图像的灰度级分辨率调整至{} 口上将它们显示出来。 设计思路: 灰度级分辨率又称色阶,是指图像中可分辨的灰度级的数目,它与存储灰度级别所使用的数据类型有关。由于灰度级度量的是投射到传感器上的光辐射值的强度,所以灰度级分辨率又称为辐射计量分辨率。随着图像灰度级分辨率的的逐渐降低,图像中所包含的颜色数目将变得越来越少,从而在颜色维度造成图像信息量的退化。 MATLAB?提供了histeq函数用于图像灰度值的改变,调用格式如下: J = histeq(I,n) 其中J为变换后的图像,I为输入图像,n为变换的灰度值。依次改变n的值为 128、64、32、16、8、4、2 就可以得到灰度值分辨率为128、64、32、16、8、4、2 的输出图像。利用MATLAB?的subplot命令可以将不同灰度的图像放在同一个figure中方便对比。 课题实现: 该思路的MATLAB?源代码如下: in_photo=imread('lena.bmp'); %读入图片“lena.bmp”,位置在matlab当前工作区路径下D:\TempProject\Matlab\Works for i = [128,64,32,16,8,4,2] syms(['out_photo',num2str(i)]); %利用for循环定义7个变量,作为不同灰度值分辨率的输出变量 eval(['out_photo',num2str(i), '=histeq(in_photo,i)',';']); %histeq函数用于改变图像灰度值,用eval函数给变量循环赋值

数字图像处理课程设计题目和要求-2013

. . . .页脚. 数字图像处理课程设计容、要求 题目一:图像处理软件 1、设计容及要求: (1)、独立设计方案,实现对图像的十五种以上处理(比如:底片化效果、灰度增强、图像复原、浮雕效果、木刻效果等等)。 (2)、参考photoshop软件,设计软件界面,对处理前后的图像以及直方图等进行对比显示; (3)、将实验结果与其他软件实现的效果进行比较、分析。总结设计过程所遇到的问题。 2、参考方案(所有参考方案若无特殊说明,均以matlab为例说明): (1)实现图像处理的基本操作 学习使用matlab图像处理工具箱,利用imread()语句读入图像,例如 image=imread(flower.jpg),对图像进行显示(如imshow(image)),以及直方图计算和显示。 (2)图像处理算法的实现与显示 针对课程中学习的图像处理容,实现至少十五种图像处理功能,例如模糊、锐化、对比度增强、复原操作。改变图像处理的参数,查看处理结果的变化。自己设计要解决的问题,例如引入噪声,去噪;引入运动模糊、聚焦模糊等,对图像进行复原。 (3)参照“photoshop”软件,设计图像处理软件界面 可设计菜单式界面,在功能较少的情况下,也可以设计按键式界面,视功能多少而定;参考matlab软件中GUI设计,学习软件界面的设计。

. . . 题目二:数字水印 1、设计容及要求: 为保护数字图像作品的知识产权,采用数字水印技术嵌入水印图像于作品中,同时尽可能不影响作品的可用性,在作品发生争执时,通过提取水印信息确认作品。通常情况下,水印图像大小要远小于载体图像,嵌入水印后的图像可能遇到噪声、有损压缩、滤波等方面的攻击。因此,评价水印算法的原则就是水印的隐藏性和抗攻击性。根据这一要求,设计水印算法。 (1)、查阅文献、了解数字水印的基本概念。 (2)、深入理解一种简单的数字水印嵌入与提取方法。 (3)、能够显示水印嵌入前后的载体图像。 (4)、能够显示嵌入与提取的水印。 (5)、选择一种以上的攻击方法,测试水印算法的鲁棒性等性能。 (6)、设计软件界面 2、参考方案 (1)对水印图像进行编码置乱(可采用伪随机码,提高水印图像的隐蔽性); (2) 对图像进行子图像分解(如8*8),对子块分别进行DCT变换; (3) 对DCT系数按照zig-zag排序进行排列,选择一种频系数,对该种频系数相邻 的系数进行水印嵌入 (4) 低通滤波检验水印算法的抗攻击性。 (5) 设计数字水印的软件界面。 .页脚.

计算机网络课程设计报告

计算机网络课程设计报告 姓名:李逍逍 班级:08计11 学号:08261012

一.课程设计的题目、目的及要求 (2) 二.课程设计的内容(分析和设计) (3) 三.绘制拓扑结构图 (3) 四.详细设计步骤 (5) 五.路由器或交换机配置的代码 (6) 六.显示最终的结果 (8) 七.课程设计总结 (9)

一.课程设计的题目、目的及要求 课程设计题目:组建小区局域网 课程设计目的: 更深了解路由器,交换机,PC机之间的配置与应用,熟练掌握一些简单的的网络应用和连接,熟练掌握路由器和交换机的基本配置;掌握DHCP、ACL、VLAN、和NET协议和相应的技术;提高对实际网络问题的分析和解决能力。该设计需要划分为四个子网层面的小区性的网络通讯。采用软件cisco,可以更好的实现各种不同网络设备互相配合与联系,以达到最佳的局域网通讯效果。 课程设计要求: 要求能根据实际问题绘制拓扑结构图,拓扑结构图可以是树形、星形、网状形、环状形及混合形结构的之一,清晰的描述接口,进行路由器或交换机的代码配置实现,并且每个方案的需有以下几部分的内容: 1、需求特点描述; 2、设计原则; 3、解决方案设计,其中必须包含: (1)设备选型; (2)综合布线设计; (3)拓扑图; (4)IP地址规划; (5)子网划分; (6)路由协议的选择; (7)路由器配置。 组建小区局域网的总体要求: 运用自己对局域网组网技术的理解,设计小区组网方案,使得一个具有200个住户节点的智能化小区能够进行网络通讯,且将整个小区可划分为四个区域:1.网络中心区:以物业管理中心及监控中心为主的核心交换设备和服务器群;2.远程网络接入区:包括外部网络接入口的路由器设备和网络安全设备;3.园区网络区:包括从网络中心到社区服务设施的骨干交换设备; 4.家庭网络区:包括从网络中心到楼宇中的骨干交换设备,并为各住户单元提供网络接入端口,是整个小区网络系统的最基本单元。

数字图像处理课程设计报告

课程设计报告书课程名称:数字图像处理 题目:数字图像处理的傅里叶变换 学生姓名: 专业:计算机科学与技术 班别:计科本101班 学号: 指导老师: 日期: 2013 年 06 月 20 日

数字图像处理的傅里叶变换 1.课程设计目的和意义 (1)了解图像变换的意义和手段 (2)熟悉傅里叶变换的基本性质 (3)热练掌握FFT的方法反应用 (4)通过本实验掌握利用MATLAB编程实现数字图像的傅里叶变换 通过本次课程设计,掌握如何学习一门语言,如何进行资料查阅搜集,如何自己解决问题等方法,养成良好的学习习惯。扩展理论知识,培养综合设计能力。 2.课程设计内容 (1)熟悉并掌握傅立叶变换 (2)了解傅立叶变换在图像处理中的应用 (3)通过实验了解二维频谱的分布特点 (4)用MATLAB实现傅立叶变换仿真 3.课程设计背景与基本原理 傅里叶变换是可分离和正交变换中的一个特例,对图像的傅里叶变换将图像从图像空间变换到频率空间,从而可利用傅里叶频谱特性进行图像处理。从20世纪60年代傅里叶变换的快速算法提出来以后,傅里叶变换在信号处理和图像处理中都得到了广泛的使用。 3.1课程设计背景 数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。 3.2 傅里叶变换 (1)应用傅里叶变换进行数字图像处理 数字图像处理(digital image processing)是用计算机对图像信息进行处理的一门技术,使利用计算机对图像进行各种处理的技术和方法。 20世纪20年代,图像处理首次得到应用。20世纪60年代中期,随电子计算机的发展得到普遍应用。60年代末,图像处理技术不断完善,逐渐成为一个新兴的学科。利用数字图像处理主要是为了修改图形,改善图像质量,或是从图像中提起有效信息,还有利用数字图像处理可以对图像进行体积压缩,便于传输和保存。数字图像处理主要研究以下内容:傅立叶变换、小波变换等各种图像变换;对图像进行编码和压缩;采用各种方法对图像进行复原和增强;对图像进行分割、描述和识别等。随着技术的发展,数字图像处理主要应用于通讯技术、宇宙探索遥感技术和生物工程等领域。

图像处理课程设计报告

图像处理课程设计报告 导语:设计是把一种设想通过合理的规划周密的计划通过各种感觉形式传达出来的过程。以下是XX整理图像处理课程设计报告的资料,欢迎阅读参考。 图像处理课程设计报告1 摘要:图像处理技术从其功能上可以分为两大类:模拟图像处理技术、和数字图像处理技术。数字图像处理技术指的是将图像信号直接转换成为数字信号,并利用计算机进行处理的过程,其主要的特点在于处理的精度高、处理的内容丰富、可以进行复杂、难度较高的处理内容。当其不在于处理的速度比较缓慢。当前图像处理技术主要的是体现在数字处理技术上,本文说阐述的图像处理技术也是以数字图像处理技术为主要介绍对象。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。近年来, 图像处理技术得到了快速发展, 呈现出较为明显的发展趋势, 了解和掌握这些发展趋势对于做好目前的图像处理工作具有前瞻性的指导意义。本文总结了现代图像处理技术的三点发展趋势。 对图像进行处理(或加工、分析)的主要目的有三个方面: (1)提高图像的视感质量,如进行图像的亮度、彩色变换,增强、抑制某些成分,对图像进行几何变换等,以改善图像的质量。(2)提取图像中所包含的某些特征或特殊信息,这些被提

取的特征或信息往往为计算机分析图像提供便利。提取特征或信息的过程是计算机或计算机视觉的预处理。提取的特征可以包括很多方面,如频域特征、灰度或颜色特征、边界特征、区域特征、纹理特征、形状特征、拓扑特征和关系结构等。 (3)图像数据的变换、编码和压缩,以便于图像的存储和传输。不管是 何种目的的图像处理,都需要由计算机和图像专用设备组成的图像处理系统对图像数据进行输入、加工和输出。 数字图像处理主要研究的内容有以下几个方面: 图像变换由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。因此,往往采用各种图像变换的方法,如傅里叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效的处理。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。 图像编码压缩图像编码压缩技术可减少描述图像的数据量,以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。

图像处理课程设计

《图像处理技术应用实践》课程设计题目图像增强算法综合应用 学生姓名韩帅_______ 学号 院系计算机与软件学院 专业计算机科学与技术 范春年____ 噪声,不同的去噪方法效果不同,因此应该采用不同的去噪方法以达到最好的去噪效果。? (2)随机噪声应在空间域去除,而空域去噪方法中,中值滤波法效果最好。? (3)周期噪声应在频域中消去。?

(4)去除噪声后的图像仍然可以改善处理。? (5)均方误差评估去噪处理后图像的去噪效果。 2.2算法设计? (1)读入初始图片及加噪图片。? clc;?clear;? f=imread();? ? for?j?=?1?:?N? ???????d?=?sqrt((i-m)^2+(j-n)^2);? ????? h?=?1/(1+0.414*(d/d0)^(2*nn));??%?计算低通滤波器传递函数??????????? ?result(i,j)?=?h?*?G(i,j);???????? end???

end (4)计算均方误差评估去噪效果。? [m?n]=size(p);?l=f-p;? he=sum(sum(l));? avg=he/(m*n); ?k=l-avg;? result1=(sum(sum(k.^2)))/(m*n);? for i=1:M for j=1:N d=sqrt((i-m)^2+(j-n)^2); h=1/(1+0.414*(d/d0)^(2*nn)); %h=1/(1+(d/d0)^(2*nn)); %备用 G(i,j)=h*G(i,j); end end p=uint8(real(ifft2(ifftshift(G)))); subplot(341);imshow(f),title('原图'); subplot(345);imshow(log(abs(f2)),[]),title('频谱'); subplot(349);imhist(f),title('原图'); subplot(342);imshow(g),title('噪声');

计算机课程设计报告书

学号 理工大学华夏学院 课程设计 课程名称办公自动化实训 题目1.流程图的绘制 2. 演讲稿的制作 专业软件工程 班级软件1111 姓名王鑫 成绩 _________________ 指导教师 __ ______ 2012年元月2日至2012年元月6日

课程设计任务书 学生:王鑫专业班级:软件1111 指导教师:黄启荃工作单位:理工大学华夏学院 设计题目:程序流程图的绘制 初始条件: 已掌握Office 2003办公自动化软件的应用 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 主要任务: 任务描述:已知某班50个学生考试了4门课程,要求绘制一个程序流程图,实现下列功能:1.求每个人的平均成绩; 2.将平均成绩进行降序排序,并将学号与平均成绩按降序输出完成: 1 完成整个规定任务的设计及调试,得出正确结果,并经教师检查及答辩; 2. 写出规的课程设计说明书; 3. 课程设计结束后交设计说明书等文档和设计容。 4. 从元月3日起,学生每天至少要到设计教室半天以上; 设计报告撰写格式要求: 设计报告的主要容是详细写出在设计过程中所用到的主要技术或方法; 课程设计报告按国际通用格式书写, 具体格式要求请见资料:“课程设计说明书的书写容与格式” 时间安排: 第一天:学生先在实验室集中,由指导教师介绍实训目的、布置任务后选题; 第二天-第四天:学生在实验室完成设计,经教师检查并回答提问,确认设计完成; 第五天:教师在计算机上先检查设计报告、学生修改后打印提交 指导教师签字: 2011年12月26日 系主任签字: 2011年12月29日

数字图像处理课程设计(实验报告)

上海理工大学 计算机工程学院 实验报告 实验名称红细胞数目统计课程名称数字图像处理 姓名王磊学号0916020226 日期2012-11-27 地点图文信息中心成绩教师韩彦芳

一、设计内容: 主题:《红细胞数目检测》 详细说明:读入红细胞图片,通过中值滤波,开运算,闭运算,以及贴标签等方法获得细胞个数。 二、现实意义: 细胞数目检测在现实生活中的意义主要体现在医学上的作用,可通过细胞数目的检测来查看并估计病人或动物的血液中细胞数,如估测血液中红细胞、白细胞、血小板、淋巴细胞等细胞的数目,同时也可检测癌细胞的数目来查看医疗效果,根据这一系列的指标来对病人或动物进行治疗,是具有极其重要的现实作用的。 三、涉及知识内容: 1、中值滤波 2、开运算 3、闭运算 4、二值化 5、贴标签 四、实例分析及截图效果: (1)代码如下: 1、程序中定义图像变量说明 (1)Image--------------------------------------------------------------原图变量;

(2)Image_BW-------------------------------------------------------值化图象; (3)Image_BW_medfilt-------------------------中值滤波后的二值化图像; (4)Optimized_Image_BW---通过“初次二值化图像”与“中值滤波后的二值化图像”进行“或”运算优化图像效果; (5)Reverse_Image_BW--------------------------优化后二值化图象取反;(6)Filled_Image_BW----------------------已填充背景色的二进制图像;(7)Open_Image_BW--------------------------------------开运算后的图像; 2、实现代码: %-------图片前期处理------------------- %第一步:读取原图,并显示 A = imread('E:\红细胞3.png'); Image=rgb2gray(A); %RGB转化成灰度图 figure,imshow(Image); title('【原图】'); %第二步:进行二值化 Theshold = graythresh(Image); %取得图象的全局域值 Image_BW = im2bw(Image,Theshold); %二值化图象 figure,imshow(Image_BW); title('【初次二值化图像】'); %第三步二值化图像进行中值滤波 Image_BW_medfilt= medfilt2(Image_BW,[13 13]); figure,imshow(Image_BW_medfilt); title('【中值滤波后的二值化图像】'); %第四步:通过“初次二值化图像”与“中值滤波后的二值化图像”进行“或”运算优化图像效果 Optimized_Image_BW = Image_BW_medfilt|Image_BW; figure,imshow(Optimized_Image_BW); title('【进行“或”运算优化图像效果】'); %第五步:优化后二值化图象取反,保证:‘1’-〉‘白色’,‘0’-〉‘黑色’ %方便下面的操作 Reverse_Image_BW = ~Optimized_Image_BW; figure,imshow(Reverse_Image_BW); title('【优化后二值化图象取反】');

图形图像处理实验报告

第四次实验报告 实验课程:图像图像处理实验人:尹丽(200921020047) 实验时间:2012年4月19日实验地点:5-602 指导老师:夏倩老师成绩: 一、实验内容: ⑴图像的锐化:使用Sobel,Laplacian 算子分别对图像进行运算,观察并体会运算结果。 ⑵综合练习:对需要进行处理的图像分析,正确运用所学的知识,采用正确的步骤,对图像进行各类处理,以得到令人满意的图像效果。 二、实验目的: 学会用Matlab中的下列函数对输入图像按实验内容进行运算;感受各种不同的图像处理方法对最终图像效果的影响。(imfilter;fspecial;) 三、实验步骤:

1、仔细阅读Matlab 帮助文件中有关以上函数的使用说明,能充分理解其使用方法并能运用它们完成实验内容。 2、将Fig3.41(c).jpg 图像文件读入Matlab ,使用filter2函数分别采用不同的算子对其作锐化运算,显示运算前后的图像。 3、算子的输入可采用直接输入法。其中Sobel ,Laplacian ,也可用fspecial 函数产生。 4、各类算子如下: ???? ??????---121000121 ??????????-111181111 5、将Fig3.46(a).jpg 图像文件读入Matlab ,按照以下步骤对其进行处理: (1)用带对角线的Laplacian 对其处理,以增强边缘。 (2)用imadd 函数叠加原始图像。可以看出噪声增强了,应想法降低。 (3)获取Sobel 模板并用filter2对其进行5×5邻域平均,以减少噪声。 5(1)实验代码如图: 对角线Laplacian Sobel 垂直梯度

数字图像处理课程设计报告

课程设计报告书 课程名称:数字图像处理 题目:数字图像处理的傅里叶变换 学生姓名: 专业:计算机科学与技术 班别:计科本101班 学号: 指导老师: 日期:2013 年06 月20 日 数字图像处理的傅里叶变换 1.课程设计目的和意义 (1)了解图像变换的意义和手段 (2)熟悉傅里叶变换的基本性质 (3)热练掌握FFT的方法反应用 (4)通过本实验掌握利用MATLAB编程实现数字图像的傅里叶变换 通过本次课程设计,掌握如何学习一门语言,如何进行资料查阅搜集,如何自己解决问题等方法,养成良好的学习习惯。扩展理论知识,培养综合设计能力。 2.课程设计内容 (1)熟悉并掌握傅立叶变换 (2)了解傅立叶变换在图像处理中的应用 (3)通过实验了解二维频谱的分布特点 (4)用MATLAB实现傅立叶变换仿真

3.课程设计背景与基本原理 傅里叶变换是可分离和正交变换中的一个特例,对图像的傅里叶变换将图像从图像空间变换到频率空间,从而可利用傅里叶频谱特性进行图像处理。从20世纪60年代傅里叶变换的快速算法提出来以后,傅里叶变换在信号处理和图像处理中都得到了广泛的使用。 3.1课程设计背景 数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。 3.2 傅里叶变换 (1)应用傅里叶变换进行数字图像处理 数字图像处理(digital image processing)是用计算机对图像信息进行处理的一门技术,使利用计算机对图像进行各种处理的技术和方法。 ? ??20世纪20年代,图像处理首次得到应用。20世纪60年代中期,随电子计算机的发展得到普遍应用。60年代末,图像处理技术不断完善,逐渐成为一个新兴的学科。利用数字图像处理主要是为了修改图形,改善图像质量,或是从图像中提起有效信息,还有利用数字图像处理可以对图像进行体积压缩,便于传输和保存。数字图像处理主要研究以下内容:傅立叶变换、小波变换等各种图像变换;对图像进行编码和压缩;采用各种方法对图像进行复原和增强;对图像进行分割、描述和识别等。随着技术的发展,数字图像处理主要应用于通讯技术、宇宙探索遥感技术和生物工程等领域。 傅里叶变换在数字图像处理中广泛用于频谱分析,傅里叶变换是线性系统分析的一个有力工具,它使我们能够定量地分析诸如数字化系统,采样点,电子放大器,卷积滤波器,噪声,显示点等地作用(效应)。傅里叶变换(FT)是数字图像处理技术的基础,其通过在时空域和频率域来回切换图像,对图像的信息特征进行提取和分析,简化了计算工作量,被喻为描述图像信息的第二种语言,广泛应用于图像变换,图像编码与压缩,图像分割,图像重建等。因此,对涉及数字图像处理的工作者,深入研究和掌握傅里叶变换及其扩展形式的特性,是很有价值得。 (2)关于傅里叶(Fourier)变换 在信号处理中,傅里叶变换可以将时域信号变到频域中进行处理,因此傅里叶变换在信号处理中有着特殊重要的地位。 傅里叶变换能将满足一定条件的某个函数表示成三角函数(正弦和/或余弦函数)或者它们的积分的线性组合。在不同的研究领域,傅里叶变换具有多种不同的变体形式,如连续傅里叶变换和离散傅里叶变换。傅里叶变换属于谐波分析。傅里叶变换的逆变换容易求出,而且形式与正变换非常类似;正弦基函数是微分运算的本征函数,从而使得线性微分方程的求解可以转化为常系数的代数方程的求解.在线性时不变的物理系统内,频率是个不变的性质,从而系统对于复杂激励的响应可以通过组合其对不同频率正弦信号

数字图像处理课程设计报告

本科综合课程设计报告 题 目 ____________________________ 指导教师__________________________ 辅导教师__________________________ 学生姓名__________________________ 学生学号__________________________ _______________________________ 院(部)____________________________专业________________班 ___2008___年 _12__月 _30__日 数字图像处理演示系统 信息科学与技术学院 通信工程 052

1 主要内容 1.1数字图像处理背景及应用 数字图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。目前,图像处理演示系统应用领域广泛医学、军事、科研、商业等领域。因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。本图像处理演示系统以数字图像处理理论为基础,对某些常用功能进行界面化设计,便于初级用户的操作。 1.2 图像处理演示系统设计要求 能加载和显示原始图像,显示和输出处理后的图像; 系统要便于维护和具备可扩展性; 界面友好便于操作; 1.3 图像处理演示系统设计任务 数字图像处理演示系统应该具备图像的几何变换(平移、缩放、旋转、翻转)、图像增强(空间域的平滑滤波与锐化滤波)的简单处理功能。 1.3.1几何变换 几何变换又称为几何运算,它是图像处理和图像分析的重要内容之一。通过几何运算,可以根据应用的需要使原图像产生大小、形状、和位置等各方面的变化。简单的说,几何变换可以改变像素点所在的几何位置,以及图像中各物体之间的空间位置关系,这种运算可以被看成是将各物体在图像内移动,特别是图像具有一定的规律性时,一个图像可以由另外一个图像通过几何变换来产生。实际上,一个不受约束的几何变换,可将输入图像的一个点变换到输出图像中的任意位置。几何变换不仅提供了产生某些特殊图像的可能,甚至还可以使图像处理程序设计简单化。从变换性质来分可以分为图像的位置变换、形状变换等 1.3.2图像增强 图像增强是数字图像处理的基本内容之一,其目的是根据应用需要突出图像中的某些“有用”的信息,削弱或去除不需要的信息,以达到扩大图像中不同物体特征之间的差别,使处理后的图像对于特定应用而言,比原始图像更合适,或者为图像的信息提取以及其他图像分析技术奠定了基础。一般情况下,经过增强处理后,图像的视觉效果会发生改变,这种变化意味着图像的视觉效果得到了改善,某些特定信息得到了增强。

计算机课程设计报告

《计算机组成原理课程设计》任务书 一、实验目的: (1)通过微程序的编制、装入、执行,验证微程序控制器控制的工作方法。观察微程 序的运行过程,为进行简单模型计算机实验做准备。 (2)通过实验分析简单模型机结构,了解计算机工作原理。掌握计算机微程序控制器 的控制方法,掌握计算机指令执行过程。 (3)深入了解计算机各种指令的执行过程,以及控制器的组成,指令系统微程序设计 的具体知识,通过在简单模型计算机基础上设计新的5条机器指令,以提高学生 对计算机机器指令理解,锻炼学生自己动手设计模型计算机机器指令的能力。二、实验说明: 要进行这项大型实验,必须清楚地懂得: (1)模型机的功能部件及其连接关系; (2)模型机每个功能部件的功能与具体组成; (3)模型机支持的指令格式; (4)模型机的微指令格式; (5)已实现的典型指令的执行实例,即相应的微指令与其执行次序的安排与衔接;三、实验内容: (1)完成总线数据传输控制实验。 (2)完成简单模型计算机实验。 (3)完成机器指令设计实验。可选择其中一项任务 任务之一: 在模型机上实现以下功能: a)每次输入2个数,将这2 个数相加,其和依次存入存储器地址为20H开始的 3个单元,并送LED显示输出,以上操作循环执行3次后停机。 b)其中:设R0为循环计数器、R1为累加器、R2为变址寄存器,Ri就是R2 c)INPUT DEVICE和OUTPUT DEVICE的端口地址皆为00H。 任务之二: 在模型机上实现以下功能: 对输入开关上的数据和存储器某一单元中的数据进行加法操作,结果累计在存储器某一单元中,当累计值大于256时转而进行减法操作,即把此存储器单元中的值减去输入开关上的数据,结果送同一存储器单元,当操作结果小于0时再转而进行加法操作,使用显示灯上出现数据连续加,然后连续减,减到0时再连续加。这样连续加民、减直到拔动CLR结束程序运行为止。 任务之三: 1、分析手动装入程序代码时,为什么必须要在微地址显示灯显示“”时,才从开 关上置入指令代码?同时,在手动校验时,为什么只有当微地址显示灯显示“”时,发光管上显示的内容才是内存的数据? 2、若将OUT指令的操作码改为0101,则微程序必须做什么样的修改? 3、在微程序流程图上,最多还可以添加几条机器指令? 四、实验要求: (1)根据实验内容完成各指导书中的实验数据的结果、分析和总结。 (2)要求自行设计相关指令微程序;(务必利用非上机时间设计好微程序) (3)设计测试程序、实验数据并上机调试。

数字图像处理课程设计 matlab

《数字图像处理》课程设计文档 目录 一、课程设计目的 (2) 二、课程设计要求 (2) 三、课程设计的内容 (2) 四、课题分析 (3) 五、总体设计 (3) 六、具体设计 (4) 6.1、文件 (4) 6.1.1、打开 (4) 6.1.2、保存 (4) 6.1.3、打印 (4) 6.1.4、退出 (4) 6.2、直方图统计 (4) 6.2.1、R直方图 (4) 6.2.2、G直方图 (4) 6.2.3、B直方图 (4) 6.3、图像增强处里 (5) 6.3.1、直方图均衡化 (5) 6.3.2、对比度展宽 (6) 6.3.3、动态范围调整 (6) 6.3.4、空间域平滑算法 (6) 6.3.4.1、均值滤波 (7) 6.3.4.2、中值滤波 (7) 6.3.4.3、边界保持滤波 (8) 6.4、图像分割 (8) 6.4.1、均匀性度量法 (8) 6.4.2、类间最大距离法 (9) 6.4.3、局部阈值法 (9) 6.5、颜色空间转化 (9) 6..5.1、RGB转HSV (10) 6.5.2、RGB转HIS (10) 6.6、其他图像处理功能 (10) 6.6.1、锐化 (10) 6.6.2、傅里叶………………………………………………………….10\\

七、程序调试及结果分析 (11) 八、心得体会 (11) 九、参考文献 (11) 十、附录 (12) 基于MATLAB的图像处理的课程设计 一、课程设计目的 1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。 2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。 二、课程设计要求 1、要求独立完成设计项目,开发工具为MATLAB,也可为C、C++、java等, 具体自选。各组长有责任督促组员完成任务并提交报告; 2、时间为4月28日~6月28日为其两个月的业余时间。 三、课程设计的内容 学习MATLAB GUI程序设计,利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。然后按照自己拟定的功能要求进行程序设计和调试。

相关文档
最新文档