基于C_的数字图像处理算法的分析研究_赵哲

基于C_的数字图像处理算法的分析研究_赵哲
基于C_的数字图像处理算法的分析研究_赵哲

科技信息

SCIENCE &TECHNOLOGY INFORMATION

2010年第7期0引言

随着数字技术的不断发展应用,生活中的许多信息都可以用数字

来进行存储,数字图像便是我们生活中最常见的数字技术的应用。将传统图像转换为数字图像最常见的是数码相机和图像扫描仪,与传统图像相比,数字图像具有存储时间长、质量不会下降、方便加工处理打印等优势。

数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。随着计算机的发展、数学的发展(特别是离散数学理论的创立和完善)、医学、人民生活等方面应用需求增长,数字图像处理技术迅速发展起来。

一般来讲,对图像进行处理(或加工、分析)的主要目的有三个方面:

(1)提高图像的视觉效果,如改变图像的亮度、对图片进行特效处理、几何变换等,以改善图像的视觉效果。

(2)提取图像中所包含的某些特征或特殊信息,这种信息通常用于识别系统、考勤系统等身份验证系统中。

(3)图像数据的变换、压缩,以便于图像的存储和网络中的传输。Windows 最常见的数字图像格式为BMP (bitmap 位图)格式,本文以该格式图像为例,来分析数字图像的点阵处理法。

1体会像素(Pixel )

位图图像又称点阵图像或者绘制图像,是由像素点进行不同的排列和染色构成的。我们若把位图图像放大数倍,会发现这些连续色调其实是由许多色彩相近的小方点所组成,这些小方点就是构成影像的最小单位“像素”(Pixel )。这种最小的图形的单元能在屏幕上显示通常是单个的染色点。越高位的像素,其拥有的色板也就越丰富,越能表达颜色的真实感。

一幅图片可以用一个二维数组a[x,y]来表示,其中x 和y 分别表示空间横坐标和纵坐标,数组中存放的是像素点的相关信息。在位图中,每一个像素点由ARGB 组成,其中A 为Alpha-图像通道,R 为Red 红色通道,G 为Green 绿色通道,B 为Blue 蓝色通道,这三个值的取值范围分别为0~255。

2

图像处理算法的研究

2.1

图像灰度化内存法运算

在数字图像算法中,往往需要把彩色图像转换为灰度图像,24位彩色图像每个像素用3个字节表示,每个字节对应着R,G,B 分量的亮度,当R,G,B 分量值不同时,图像表现为彩色图像,若R,G,B 分量值相同,则图像表示为灰度图像。

一般来说,转换成灰度图像有3种方式:

1)Gray(x,y)=[R(x,y)+G(x,y)+B(x,y)]/3

其中,Gray(x,y)为转换后(x,y)点的灰度值,此方法为最简单的灰度算法,但是,由于人眼对颜色的感知程度不同(参见图2.1),因此经过精密的计算,推出了第二种转换方式:

图2.1

人眼对颜色的感知程度

2)Gray(x,y)=0.299*R(x,y)+0.587*G(x,y)+0.114*B(x,y)从这个算法可以看出,绿色所占的比重最大。

3)Gray(x,y)=Max[R(x,y),G(x,y),B(x,y)]

也有一种流行的算法是取RGB 颜色中的最大值,作为图像的灰度值。

我们以第二种方法为例,基于C#语言中的内存处理法,写出算法的代码片段:

//定义位图矩形rect (代码略)//锁定位图像素(代码略)

//得到位图在内存当中的首地址

IntPtr p =myMap.Scan0;

//获取位图字节数bytes 定义位图数组rgbValues (代码略)//复制被锁定的位图像素值到该像素内

System.Runtime.InteropServices.Marshal.Copy(p,rgbValues,0,bytes);//灰度化

double colorTemp =0;

for (int i =0;i

colorTemp =rgbValues (i+2)*0.299+rgbValues (i+1)*0.587+

rgbValues(i)*0.114;

rgbValues[i]=rgbValues[i+1]=rgbValues[i+2]=Convert.ToByte

(colorTemp);

}

//回复位图

System.Runtime.InteropServices.Marshal.Copy(rgbValues,0,p,bytes);//解锁位图(代码略)2.2图像积木化点阵法运算

图2.2

Lena 原图和积木效果图

基于C#的数字图像处理算法的分析研究

赵哲

(广州大学华软软件学院广东

广州

510990)

【摘要】以C#为语言基础,通过对数字图像常见的灰度化、积木化、浮雕效果等处理算法的分析研究,了解运用C#中的内存法和GDI+提供的像素点阵算法处理数字图像。

【关键词】数字图像处理;GDI+;灰度化算法;像素点阵算法

【Abstract 】Take C #as language basis,by the fact that the pixel lattice algorithm that memory law and GDI +in studying ,knowing to wield C #

handling algorithmic analysis such as effect ,building block effect ,emboss effect provides sells a digital picture at reduced prices to common gradation of digital picture.

【Key words 】Digital image processing ;GDI +;Gray-scale algorithm ;Pixel dot-matrix

algorithm

○IT 论坛○484

科技信息2010年第7期

SCIENCE &TECHNOLOGY INFORMATION 上图为经典图片Lena 图的原图(左)和积木效果图(右),在原图中,各个点的RGB 值均不相同,而在积木效果图中,其像素点的值只有0或255两种,积木效果图的算法原理,如下所示:

4)BlockTemp(x,y)=[R(x,y)+G(x,y)+B(x,y)]/3

假设Block(x,y)是x ,y 像素点的RGB 积木值,如果BlockTemp 大于等于128,则设置Block(x,y)=255,反则,设置Block(x,y)=0。

由于位图图像中的像素以点阵方式整齐排列,对像素点的处理,也通常被称作数字图像处理中的点阵算法。GDI+提供了Bitmap.GetPixel 和Bitmap.SetPixel 方法可以获取或者设置当前像素的颜色,这是种比较简单的方法,但是,运行速度较内存发慢。代码片段如下所示:

//实例化位图为myMap ,定义颜色blockColor ,定义像素值block //点阵循环

for (int x=0;x

for(int y =0;y

blockColor=myMap.GetPixel(x,y);

block =(blockColor.R+blockColor.G+blockColor.B)/3;if (block>=128)

myMap.SetPixel(x,y,color.FromArgb(255,255,255));else

myMap.SetPixel(x,y,color.FromArgb(0,0,0));}}2.3

图像浮雕效果运算

图2.3Lena 原图和浮雕效果图

上图为经典图片Lena 图的原图(左)和浮雕效果图(右)。浮雕效果的主要原理是:像素点的像素值与相邻像素点的像素值相减后加上128,然后将其作为新的像素点的值赋值给图像,如下所示:

5)Enchase(x,y).R=|R(x,y)-R(x+1,y+1)|+1286)Enchase(x,y).G=|G(x,y)-G(x+1,y+1)|+1287)Enchase(x,y).B=|B(x,y)-B(x+1,y+1)|+128

其中Enchase(x,y)为x ,y 像素点的浮雕颜色,代码片段如下所示://实例化位图为myMap ,定义颜色blockColor ,定义像素值block //点阵循环

for (int x=0;x

for(int y =0;y

enchaseColor=myMap.GetPixel(x,y);

enchaseNeiColor=myMap.GetPixel(x+1,y+1)int r,g,b;

r =Math.Abs(enchaseColor.R-enchaseNeiColor.R);g =Math.Abs(enchaseColor.G-enchaseNeiColor.G);b =Math.Abs(enchaseColor.B-enchaseNeiColor.B);myMap.SetPixel(x,y,color.FromArgb(r,g,b));}}

3小结

在过去的二三十年里,C++成为在商业软件的开发领域中使用最多的语言之一,也广泛应用与数字图像处理算法中,但是,既要精通图像处理的各种算法,又要精通C++的语法结构,是件不太容易的事情。C#保留了C++原有的强大功能,同时具有简单的语法结构和高效的开发能力,做数字图像开发是最容易上手的一门工具语言,然而,到目前为止,市面上基于C#的数字图像算法非常少,本文通过对数字图像

算法的分析研究,实现数字图像处理中各种常见的效果,希望可以与读者共勉!【参考文献】

[1]MSDN.

[2]何金国.数字图像处理实训教程.清华大学出版社,2008,11.[3]赵春江.C#数字图像处理算法.人民邮电出版社,2009,03.

作者简介:赵哲(1983.09—),女,华中科技大学软件工程硕士,广州大学华软软件学院网络技术系电子商务工程师。

[责任编辑:汤静]

(上接第637页)积极性。利用校园广播每天在空余的时间播放英文流行歌曲让学生学唱、周末组织学生观看英文原声电影,提高学生的兴趣,营造浓厚的英语氛围。让学生以轻松愉悦的心情体验外国文化并感悟其文化内涵。

4.2开辟英语角和英语学习园地。每周设定一个时间为英语角时间,提前公布本期讨论的主题,让学生在充分准备的情况之下进行交流,并请外教参与,同时,大家还可以对自己感兴趣的话题进行交流。另外,还可以在学校开辟英语学习园地,可以利用学校的黑板报,橱窗编写一些英文幽默笑话、寓言故事、精彩诗章等,既有趣又可增加词汇量,并定期更换。

4.3利用报刊杂志,增强学生了解其他国家的文化知识。

文学作品和报刊文章是了解一个民族的文化的最生动、最丰富的材料,选读不同时期的文学作品,可以了解不同时期的社会状况和文化特征,阅读报刊文章是了解现实社会的动态与文化的有效途径。教学之余可向学生推荐阅读体现外国文化的英文版的文学作品简易读本,提醒学生们留心积累有关社会习俗以及日常交际等方面的知识。

5在英语教学中,还要正确处理本国文化与外国文化的关系

中学生的道德观、价值观正在形成过程中,他们思想活跃,善于接受新鲜事物,但同时缺乏必要的鉴别能力。在培养学生跨文化意识的同时,我们应尽力减少学生民族中心主义态度,避免用我们目己的文

化、道德、价值观的标准去衡量,评判异国文化;同时又要避免盲目的追随,模仿异国文化,而应是坚持自己的优秀文化传统,比较两种文化的异同,使自己在跨文化交际中能恰当、得体的进行交际。

总之,现在英语教学要将培养学生跨文化意识,提高学生的跨文化交际能力为目标。英语教学中的跨文化意识培养不是一朝一夕、一蹴而就的事。作为一名英语教师,我们更需要正确认识跨文化交际教育在语言教育中的重要地位,在英语教学中必须兼顾语言和文化,提高对中外文化异同的敏感性。应该遵循循序渐进、因材施教的原则,综合运用多种手段和方法,积极引导学生树立正确的学习态度,培养学生的跨文化意识,这样才能全面提高英语教学的效率和质量,从而提高学生的英语交际能力。【参考文献】

[1]教育部.英语课程标准:实验稿[S].北京师范大学出版社,2001,7.[2]胡文仲.英语的教与学[M].英语教学与研究出版社,1989.[3]王薇.英语教学要注重语言和文化的关系[J].文学教育.[4]孙娟.文化意识对英语教学的影响[D].浙江大学,2008.

[5]于风波.中师英语教学中文化意识培养的研究[D].东北师范大学,2006,10.[6]赵海燕.《新目标》英语教学中文化意识培养的研究[D].东北师范大学,

2009,5.

[责任编辑:王静]

○IT 论坛○

485

数字图像处理试题

名词:*数字图像,数字图像处理,图像采样,线性拉伸,高通滤波,低通滤波,中值滤波,特征空间,图像分析,图像分割 问答题:1、设一幅图像有如图所示直方图,对该图像进行直方图均衡化,写出均衡化过程,并画出均衡化后的直方图。若在原图像一行上连续8个像素的灰度值分别为:0、1、2、3、4、5、6、7,则均衡后,他们的灰度值为多少? 如图为一幅16级灰度的图像。请写出均值滤波和中值滤波的3x3滤波器;说明这两种滤波器各自的特点;并写出两种滤波器对下图的滤波结果(只处理灰色区域,不处理边界)。(15分) 设一幅灰度图像,其目标和背景的像素点灰度呈正态分布,灰度直方图如图所示。其中:、分 别为目标点的灰度分布密度函数、均值;、分别为背景点的灰度分布密度函数、均值。并设目标点和背景点的方差均为,目标点个数和图像总像点数的比为1:2。T是根据最小误差准则确定的最佳阈值。(15分) 试证明:

1.根据所学过的图像处理和分析方法,设计一套算法流程来实现汽车牌照的定位和数字的识别(给出设计思想即可)。 1、如图所示,A和B的图形完全一样,其背景与目标的灰度值分别标注于图中, 请问哪一个目标人眼感觉更亮一些?为什么?(10分) 选择题: 图像灰度方差说明了图像哪一个属性。(B ) A 平均灰度 B 图像对比度 C 图像整体亮度D图像细节 下列算法中属于图象锐化处理的是:( C ) A.低通滤波 B.加权平均法 C.高通滤波 D. 中值滤波 高通滤波后的图像通常较暗,为改善这种情况,将高通滤波器的转移函数加上一常数量以便引入一些低频分量。这样的滤波器叫 B 。 A. 巴特沃斯高通滤波器 B. 高频提升滤波器 C. 高频加强滤波器 D. 理想高通滤波器 ( )7.下列图象边缘检测算子中抗噪性能最好的是: a.梯度算子 b.Prewitt算子 c.Roberts算子 d. Laplacian算子

算法分析与设计总结

第一章算法概述 1.算法:解决问题的一种方法或过程;由若干条指令组成的有穷指令。 2.算法的性质: 1)输入:有零个或多个输入 2)输出:有至少一个输出 3)确定性:每条指令是清晰的、无歧义的 4)有限性:每条指令的执行次数和时间都是有限的 3.算法与程序的区别 程序是算法用某种程序设计语言的具体实现 程序可以不满足算法的有限性 4.算法复杂性分析 1)算法的复杂性是算法运行所需要的计算机资源的量,需要时间资源的量称为时间复 杂性,需要空间资源的量称为空间复杂性 2)三种时间复杂性:最坏情况、最好情况、平均情况 3)可操作性最好且最有实际价值的是最坏情况下的时间复杂性 第二章递归与分支策略 1.递归概念:直接或间接调用自身的算法 2.递归函数:用函数自身给出定义的函数 3.递归要素:边界条件、递归方程 4.递归的应用 ?汉诺塔问题 void Hanuo(int n,int a,int b,int c) { if(n==1) return; Hanuo(n-1,a,c,b); move(a,b) Hanuo(n-1,c,b,a); } ?全排列问题 void Perm(Type list[],int k,int m) { //产生list[k,m]的所有排列 if(k == m) { for(int i = 0;I <= m;i++) cout<

《计算机算法设计与分析》习题及答案

《计算机算法设计与分析》习题及答案 一.选择题 1、二分搜索算法是利用( A )实现的算法。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 2、下列不是动态规划算法基本步骤的是( A )。 A、找出最优解的性质 B、构造最优解 C、算出最优解 D、定义最优解 3、最大效益优先是(A )的一搜索方式。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 4. 回溯法解旅行售货员问题时的解空间树是( A )。 A、子集树 B、排列树 C、深度优先生成树 D、广度优先生成树 5.下列算法中通常以自底向上的方式求解最优解的是(B )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法 6、衡量一个算法好坏的标准是( C )。 A 运行速度快 B 占用空间少 C 时间复杂度低 D 代码短 7、以下不可以使用分治法求解的是( D )。 A 棋盘覆盖问题 B 选择问题 C 归并排序 D 0/1背包问题 8. 实现循环赛日程表利用的算法是(A )。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 9.下面不是分支界限法搜索方式的是(D )。 A、广度优先 B、最小耗费优先 C、最大效益优先 D、深度优先 10.下列算法中通常以深度优先方式系统搜索问题解的是(D )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法

11.备忘录方法是那种算法的变形。( B ) A、分治法 B、动态规划法 C、贪心法 D、回溯法 12.哈夫曼编码的贪心算法所需的计算时间为(B )。 A、O(n2n) B、O(nlogn) C、O(2n) D、O(n) 13.分支限界法解最大团问题时,活结点表的组织形式是(B )。 A、最小堆 B、最大堆 C、栈 D、数组 14.最长公共子序列算法利用的算法是(B)。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 15.实现棋盘覆盖算法利用的算法是(A )。 A、分治法 B、动态规划法 C、贪心法 D、回溯法 16.下面是贪心算法的基本要素的是(C )。 A、重叠子问题 B、构造最优解 C、贪心选择性质 D、定义最优解 17.回溯法的效率不依赖于下列哪些因素( D ) A.满足显约束的值的个数 B. 计算约束函数的时间 C.计算限界函数的时间 D. 确定解空间的时间 18.下面哪种函数是回溯法中为避免无效搜索采取的策略(B ) A.递归函数 B.剪枝函数 C。随机数函数 D.搜索函数 19. (D)是贪心算法与动态规划算法的共同点。 A、重叠子问题 B、构造最优解 C、贪心选择性质 D、最优子结构性质 20. 矩阵连乘问题的算法可由( B )设计实现。 A、分支界限算法 B、动态规划算法 C、贪心算法 D、回溯算法 21. 分支限界法解旅行售货员问题时,活结点表的组织形式是( A )。

数字图像处理实验题目要求

1基于形态学运算的星空图像分割 主要内容: 在获取星图像的过程中,由于某些因素的影响,获得的星图像存在噪声,而且星图像的背景经常是不均匀的,为星图像的分割造成了极大的困难。膨胀和腐蚀是形态学的两个基本运算。用形态学运算对星图像进行处理,补偿不均匀的星图像背景,然后进行星图像的阈值分割。 要求: 1> 图像预处理:对原始星空图像进行滤波去噪处理; 2> 对去噪后的图像进行形态学运算处理; 3> 选取自适应阈值对形态学运算处理后的图像进行二值化; 4> 显示每步处理后的图像; 5> 对经过形态学处理后再阈值的图像和未作形态学处理后再阈值的图像进行对比分析。 待分割图像 直接分割图像 处理后的分割图像 2基于数字图像处理的印刷电路板智能检测方法 主要内容: 通过对由相机实时获取的印刷电路板图像进行焊盘识别,从而提高电子元件的贴片质量,有效提高电路板的印刷效率。 要求: 1> 图像预处理:将原始彩色印刷电路板图像转成灰度图像,对灰度图像进行背景平滑和滤波去噪; 2> 对去噪后的图像进行图像增强处理,增强边缘提取的效果。 3> 对增强后的图像进行边缘提取(至少两种以上的边缘提取算法); 4> 显示每步处理后的图像(原始电路板图像可自行查找); 5> 图像处理后要求能对每个焊盘进行边缘提取,边缘清晰。 3静止背景下的移动目标视觉监控 主要内容: 基于视觉的人的运动分析最有前景的潜在应用之一是视觉监控。视觉监控系统的需求主要来自那些对安全要求敏感的场合,如银行、商店、停车场、军事基地等。通过对静止背景下的目标识别,来提醒监测人员有目标出现。

要求: 1>对原始参考图和实时图像进行去噪处理; 2>对去噪后的两幅图像进行代数运算,找出目标所在位置,提取目标,并将背景置黑; 3> 判断目标大小,若目标超过整幅图像的一定比例时,说明目标进入摄像保护区域,系统对监测人员进行提示(提示方式自选)。 4>显示每步处理后的图像; 5>分析此种图像监控方式的优缺点。 背景目标出现目标提取 4车牌识别图像预处理技术 主要内容: 车辆自动识别涉及到多种现代学科技术,如图像处理、模式识别与人工智能、计算机视觉、光学、机械设计、自动控制等。汽车作为人类生产、生活中的重要工具被广泛的使用,实现自动采集车辆信息和智能管理的车牌自动识别系统具有十分重要的意义: 要求: 1>对原始车牌图像做增强处理; 2>对增强后的彩色图像进行灰度变换; 3>对灰度图像进行直方图均衡处理; 4>选取自适应的阈值,对图像做二值化处理; 5>显示每步处理后的图像; 6>分析此种图像预处理的优缺点及改进措施,简要叙述车牌字符识别方法 原始车牌图像处理后的车牌图像 5医学细胞图像细胞分割图像增强算法研究 主要内容: 医学图象处理利用多种方法对各种图像数据进行处理,以期得到更好的显示效果以便医生根据细胞的外貌进行病变分析。 要求: 1>通过对图像的灰度变换调整改变细胞图像的灰度,突出感兴趣的细胞和细胞核区域。 2>通过直方图修改技术得到均衡化或规定化等不同的处理效果。 3>采用有效的图像平滑方法对细胞图像进行降噪处理,消除图像数字化和传输时所混入的噪声,提高图像的视觉效果。 4>利用图像锐化处理突出细胞的边缘信息,加强细胞的轮廓特征。 5>显示每步处理图像,分析此种细胞分割图像预处理方法的优缺点。 原始细胞图像 图像处理后的细胞图像 6瓶子灌装流水线检测是否液体灌装满瓶体 当饮料瓶子在罐装设备后要进行液体的检测,即:进行判断瓶子灌装流水线是否灌装满瓶体的检测,如液面超过瓶颈的位置,则装满,否则不满,如果不满则灌装液体不合格,需重新进行灌装。 具体要求: 1)将原进行二值化 2)二值化后的图像若不好,将其滤波再进行膨胀处理,并重新进行二值化 3)将图像标记连通域并进行面积计算,找出不符合要求的标记块 4)将不合格的图像进行提取,并记录不合格率

算法设计与分析课程设计(完整版)

HUNAN CITY UNIVERSITY 算法设计与分析课程设计 题目:求最大值与最小值问题 专业: 学号: 姓名: 指导教师: 成绩: 二0年月日

一、问题描述 输入一列整数,求出该列整数中的最大值与最小值。 二、课程设计目的 通过课程设计,提高用计算机解决实际问题的能力,提高独立实践的能力,将课本上的理论知识和实际有机的结合起来,锻炼分析解决实际问题的能力。提高适应实际,实践编程的能力。在实际的编程和调试综合试题的基础上,把高级语言程序设计的思想、编程巧和解题思路进行总结与概括,通过比较系统地练习达到真正比较熟练地掌握计算机编程的基本功,为后续的学习打下基础。了解一般程序设计的基本思路与方法。 三、问题分析 看到这个题目我们最容易想到的算法是直接比较算法:将数组的第 1 个元素分别赋给两个临时变量:fmax:=A[1]; fmin:=A[1]; 然后从数组的第 2 个元素 A[2]开始直到第 n个元素逐个与 fmax 和 fmin 比较,在每次比较中,如果A[i] > fmax,则用 A[i]的值替换 fmax 的值;如果 A[i] < fmin,则用 A[i]的值替换 fmin 的值;否则保持 fmax(fmin)的值不变。这样在程序结束时的fmax、fmin 的值就分别是数组的最大值和最小值。这个算法在最好、最坏情况下,元素的比较次数都是 2(n-1),而平均比较次数也为 2(n-1)。 如果将上面的比较过程修改为:从数组的第 2 个元素 A[2]开始直到第 n 个元素,每个 A[i]都是首先与 fmax 比较,如果 A[i]>fmax,则用 A[i]的值替换 fmax 的值;否则才将 A[i]与 fmin 比较,如果 A[i] < fmin,则用 A[i]的值替换 fmin 的值。 这样的算法在最好、最坏情况下使用的比较次数分别是 n-1 和 2(n-1),而平均比较次数是 3(n-1)/2,因为在比较过程中,将有一半的几率出现 A[i]>fmax 情况。

数字图像处理-作业题及部分答案解析演示教学

1.数字图像与连续图像相比具有哪些优点?连续图像f(x,y与数字图像I(c,r中各量的含义 是什么?它们有何联系和区别? (To be compared with an analog image, what are the advantages of a digital image? Let f(x,y be an analog image, I(r, c be a digital image, please give explanation and comparison for defined variables: f/I, x/r, and y/c 2.图像处理可分为哪三个阶段? 它们是如何划分的?各有什么特点? (We can divide "image processing" into 3 stages, what are they? how they are divided? What are their features? 答:低级处理---低层操作,强调图像之间的变换,是一个从图像到图像的过程; 中级处理---中层操作,主要对图像中感兴趣的目标进行检测和测量,从而建立对图像的描述,是一个从图像到数值或符号的过程; 高级处理---高层操作,研究图像中各目标的性质和相互联系,得出对图像内容含义的理解以及对原来客观场景的解释; 3.试从结构和功能等角度分析人类视觉中最基本的几个要素是什么?什么是马赫带效应? 什 么是同时对比度?它们反映了什么共同问题? (According to the structure and function of the eyes, what are the basic elements in human vision? What is the Mach Band Effect? What is Simultaneous Contrast? What common facts can we infer from both Mach Band Effect and Simultaneous Contrast? 答:人的视觉系统趋向于过高或过低估计不同亮度区域边界的现象称为“马赫带”效应;同时对比度指的是人的视觉系统对某个区域感觉到的亮度除了依赖于它本身的强度,还与背景有关.

算法分析与设计

专业: 班级: 学号: 姓名: 日期: 2014年 11月 10日

48476Λn n 111+++=。 2、q(n ,m)=q(n ,n),m>=n 。 最大加数n1实际上不能大于n ,因此,q(1,m)=1。 3、q(n ,n)=1+q(n ,n-1)。 正整数n 的划分由n1=n 的划分和n1<=n-1的划分组成。 4、q(n ,m)= q(n ,m-1)+q(n-m ,m),n>m>1。 正整数n 的最大加数n1不大于m 的划分由n1=m 的划分和n1<=m-1的划分组成。 (2)、算法描述 public class 张萌 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out .println(q (2,2)); } public static int q(int n,int m) { if ((n<1)||(m<1)) return 0; if ((n==1)||(m==1)) return 1; if (n

数字图像处理与分析习题及答案

第一章绪论 课后4. 1. 数字图像处理的主要研究内容包含很多方面,请列出并简述其中的4种。 ①图像数字化:将一幅图像以数字的形式表示。主要包括采样和量化两个过程。 ②图像增强:将一幅图像中的有用信息进行增强,同时对其无用信息进行抑制,提高图 像的可观察性。 ③图像的几何变换:改变图像的大小或形状。 ④图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进 行分析。 ⑤图像识别与理解:通过对图像中各种不同的物体特征进行定量化描述后,将其所期望 获得的目标物进行提取,并且对所提取的目标物进行一定的定量分析。 2. 什么是图像识别与理解? 图像识别与理解是指通过对图像中各种不同的物体特征进行定量化描述后,将其所期望获得的目标物进行提取,并且对所提取的目标物进行一定的定量分析。比如要从一幅照片上确定是否包含某个犯罪分子的人脸信息,就需要先将照片上的人脸检测出来,进而将检测出来的人脸区域进行分析,确定其是否是该犯罪分子。 3. 简述图像几何变换与图像变换的区别。 ①图像的几何变换:改变图像的大小或形状。比如图像的平移、旋转、放大、缩小等, 这些方法在图像配准中使用较多。 ②图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进 行分析。比如傅里叶变换、小波变换等。

4.一个数字图像处理系统由哪几个模块组成? 答:一个基本的数字图像处理系统由图像输入、图像存储、图像输出、图像通信、图像处理和分析5个模块组成 5.连续图像和数字图像如何相互转换? 答:数字图像将图像看成是许多大小相同、形状一致的像素组成。这样,数字图像可以用二维矩阵表示。将自然界的图像通过光学系统成像并由电子器件或系统转化为模拟图像(连续图像)信号,再由模拟/数字转化器(ADC)得到原始的数字图像信号。图像的数字化包括离散和量化两个主要步骤。在空间将连续坐标过程称为离散化,而进一步将图像的幅度值(可能是灰度或色彩)整数化的过程称为量化。 6.采用数字图像处理有何优点? 答:数字图像处理与光学等模拟方式相比具有以下鲜明的特点: 1.具有数字信号处理技术共有的特点。(1)处理精度高。(2)重现性能好。(3)灵活性高。2.数字图像处理后的图像是供人观察和评价的,也可能作为机器视觉的预处理结果。 3.数字图像处理技术适用面宽。 4.数字图像处理技术综合性强。 7.数字图像处理主要包括哪些研究内容? 答:图像处理的任务是将客观世界的景象进行获取并转化为数字图像、进行增强、变换、编码、恢复、重建、编码和压缩、分割等处理,它将一幅图像转化为另一幅具有新的意义的图像。 8.常见的数字图像处理开发工具有哪些?各有什么特点? 答.目前图像处理系统开发的主流工具为Visual C++(面向对象可视化集成工具)和MATLAB 的图像处理工具箱(Image Processing Tool box)。两种开发工具各有所长且有相互间的软件接口。 Microsoft 公司的 VC++是一种具有高度综合性能的面向对象可视化集成工具,用它开发出来的 Win 32 程序有着运行速度快、可移植能力强等优点。VC++所提供的 Microsoft 基础类库 MFC 对大部分与用户设计有关的 Win 32 应用程序接口 API 进行了封装,提高了代码的可重用性,大大缩短了应用程序开发周期,降低了开发成本。由于图像格式多且复杂,为了减轻程序员将主要精力放在特定问题的图像处理算法上,VC++ 6.0 提供的动态链接库ImageLoad.dll 支持B MP、JPG、TIF 等常用6种格式的读写功能。 MATLAB 的图像处理工具箱 MATLAB 是由 MathWorks 公司推出的用于数值计算的有

OpenJudge算法设计与分析习题解答

1、硬币面值组合 描述 使用1角、2角、5角硬币组成n 角钱。 设1角、2角、5角的硬币各用了a、b、c个,列出所有可能的a, b, c组合。 输出顺序为:先按c的值从小到大,若c相同则按b的值从小到大。 输入 一个整数n(1 <= n <= 100),代表需要组成的钱的角数。 输出 输出有若干行,每行的形式为: i a b c 第1列i代表当前行数(行数从001开始,固定3个字符宽度,宽度不足3的用0填充),后面3列a, b, c分别代表1角、2角、5角硬币的个数(每个数字固定12个字符宽度,宽度不足的在左边填充空格)。

源代码: #include #include int main(){ int t=1; int i,j,k; int n; scanf("%d",&n); int A=n,B=n/2,C=n/5; for(i=0;i<=C;i++){ for(j=0;j<=B;j++){ for(k=0;k<=A;k++){ if(i*5+j*2+k*1==n){ printf("%03d%12d%12d%12d\n",t,k,j,i); t++; } } } } getchar(); return 0; } 2、比赛排名 描述 5名运动员参加100米赛跑,各自对比赛结果进行了预测:A说:E是第1名。 B说:我是第2名。 C说:A肯定垫底。 D说:C肯定拿不了第1名。

E说:D应该是第1名。 比赛结束后发现,只有获第1名和第2名的选手猜对了,E不是第2名和第3名,没有出现名次并列的情况。 请编程判断5位选手各是第几名。 输入 无 输出 输出要求:按ABCDE的顺序输出5行,其中第1行是A的名次,第2行是B的名次,第3行是C的名次,第4行是D的名次,第5行是E的名次。 样例输入 样例输出 源代码: #include int main() { printf("5\n"); printf("2\n"); printf("1\n"); printf("3\n"); printf("4\n"); return 0; } 3、鸡兔同笼 描述 一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。

算法分析与设计

第一章 什么是算法 算法是解决一个计算问题的一系列计算步骤有序、合理的排列。对一个具体问题(有确定的输入数据)依次执行一个正确的算法中的各操作步骤,最终将得到该问题的解(正确的输出数据)。 算法的三个要素 1).数据: 运算序列中作为运算对象和结果的数据. 2).运算: 运算序列中的各种运算:赋值,算术和逻辑运算 3).控制和转移: 运算序列中的控制和转移. 算法分类 从解法上:数值型算法:算法中的基本运算为算术运算;非数值型算法:算法中的基本运算为逻辑运算. 从处理方式上:串行算法:串行计算机上执行的算法;并行算法:并行计算机上执行的算法 算法的五个重要的特性 (1) 有穷性:在有穷步之后结束。 (2) 确定性:无二义性。 (3) 可行性:可通过基本运算有限次执行来实现。 (4) 有输入 表示存在数据处理 (5) 有输出 伪代码 程序设计语言(PDL ),也称为结构化英语或者伪代码,它是一种混合语言,它采用一种语言(例如英语)的词汇同时采用类似另外一种语言(例如,结构化程序语言)的语法。 特点:1)使用一些固定关键词的语法结构表达了结构化构造、数据描述、模块的特征; 2)以自然语言的自由语法描述了处理过程;3)数据声明应该既包括简单的也包括复杂的数据结构;4)使用支持各种模式的接口描述的子程序定义或者调用技术。 求两个n 阶方阵的相加C=A+B 的算法如下,分析其时间复杂度。 #define MAX 20 ∑∑∑∑-=-=-=-=====102101010*11n i n i n i n j n n n n n n n n )O()1O(1O(11i i j i j ==∑∑==))O(N )21O()O()O(21N 1=+=∑=∑==)(N N i i N i i 赋值,比较,算术运算,逻辑运算,读写单个变量(常量)只需1单位时间 2). 执行条件语句 if c then S1 else S2 的时间为TC +max(TS1,TS2). 3). 选择语句 case A of a1: s1;a2: s2;...; am: sm 需要的时间为 max (TS1,TS2 ,..., TSm ). 4). 访问数组的单个分量或纪录的单个域需要一个单位时间. 5). 执行for 循环语句的时间=执行循环体时间*循环次数. 6). while c do s (repeat s until c)语句时间=(Tc+Ts)*循环次数. 7). 用goto 从循环体内跳到循环体末或循环后面的语句时,不需额外时间 8). 过程或函数调用语句:对非递归调用,根据调用层次由里向外用规则1-7进行分析; 对递归调用,可建立关于T(n)的递归方程,求解该方程得到T(n).

算法设计与分析复习题目及答案

一。选择题 1、二分搜索算法是利用( A )实现的算法。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 2、下列不是动态规划算法基本步骤的是( B )。 A、找出最优解的性质 B、构造最优解 C、算出最优解 D、定义最优解 3、最大效益优先是( A )的一搜索方式。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 4、在下列算法中有时找不到问题解的是( B )。 A、蒙特卡罗算法 B、拉斯维加斯算法 C、舍伍德算法 D、数值概率算法 5. 回溯法解旅行售货员问题时的解空间树是( B )。 A、子集树 B、排列树 C、深度优先生成树 D、广度优先生成树6.下列算法中通常以自底向上的方式求解最优解的是( B )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法 7、衡量一个算法好坏的标准是(C )。 A 运行速度快 B 占用空间少 C 时间复杂度低 D 代码短 8、以下不可以使用分治法求解的是(D )。 A 棋盘覆盖问题 B 选择问题 C 归并排序 D 0/1背包问题 9. 实现循环赛日程表利用的算法是( A )。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 10、下列随机算法中运行时有时候成功有时候失败的是(C ) A 数值概率算法 B 舍伍德算法 C 拉斯维加斯算法 D 蒙特卡罗算法 11.下面不是分支界限法搜索方式的是( D )。 A、广度优先 B、最小耗费优先 C、最大效益优先 D、深度优先12.下列算法中通常以深度优先方式系统搜索问题解的是( D )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法 13.备忘录方法是那种算法的变形。( B )

算法分析与设计习题集整理

算法分析与设计习题集整理 第一章算法引论 一、填空题: 1、算法运行所需要的计算机资源的量,称为算法复杂性,主要包括时间复杂度和空间复杂度。 2、多项式10()m m A n a n a n a =+++L 的上界为O(n m )。 3、算法的基本特征:输入、输出、确定性、有限性 、可行性 。 4、如何从两个方面评价一个算法的优劣:时间复杂度、空间复杂度。 5、计算下面算法的时间复杂度记为: O(n 3) 。 for(i=1;i<=n;i++) for(j=1;j<=n;j++) {c[i][j]=0; for(k=1;k<=n;k++) c[i][j]= c[i][j]+a[i][k]*b[k][j]; } 6、描述算法常用的方法:自然语言、伪代码、程序设计语言、流程图、盒图、PAD 图。 7、算法设计的基本要求:正确性 和 可读性。 8、计算下面算法的时间复杂度记为: O(n 2) 。 for (i =1;i

算法设计与分析c语言描述课后答案

P 15 1-3. 最大公约数为1。快1414倍。 主要考虑循环次数,程序1-2的while循环体做了10次,程序1-3的while循环体做了14141次(14142-2循环) 若考虑其他语句,则没有这么多,可能就601倍。 第二章 2-8.(1)画线语句的执行次数为。。划线语句的执行次数应该理解为一格整体。 (2)画线语句的执行次数为。。 (3)画线语句的执行次数为。。 (4)当n为奇数时画线语句的执行次数为, 当n为偶数时画线语句的执行次数为。。 2-10.(1)当时,,所以,可选,。对于,,所以,。 (2)当时,,所以,可选,。对于,,所以,。 (3)由(1)、(2)可知,取,,,当时,有,所以。 2-11. (1) 当时,,所以,。可选,。对于,,即。注意:是f(n)和g(n)的关系。 (2)当时,,所以,。可选,。对于,,即。 (3)因为,。当时,,。所以,可选,,对于,,即。 第二章 2-17. 证明:设,则。 当时,。所以,。

第五章 5-4. SolutionType DandC1(int left,int right) { while(!Small(left,right)&&leftP[m]) left=m+1; else return S(P) } } 5-7. template int SortableList::BSearch(const T&x,int left,int right) const { if (left<=right) { int m=(right+left)/3; if (xl[m]) return BSearch(x,m+1,right); else return m; } return -1; } 第五章 9. 4 26 35 17 01234567 -10 证明:因为该算法在成功搜索的情况下,关键字之间的比较次数至少为,至多为。在不成功搜索的情况下,关键字之间的比较次数至少为,至多为。所以,算法的最好、最坏情况的时间复杂度为。 假定查找表中任何一个元素的概率是相等的,为,那么, 不成功搜索的平均时间复杂度为, 成功搜索的平均时间复杂度为。

数字图像处理考题2012级

数字图像处理: 一、图像工程的内涵(三个层次:图像处理、图像分析和图像理解及其关系)。 图像工程的内涵: 根据抽象程度和研究方法等的不同,可分为三个层次:图像处理、图像分析和图像理解。 图像处理的内容:主要对图象进行各种加工以改善图象的视觉效果、或突出有用信息,并为自动识别打基础,或通过编码以减少对其所需存储空间、传输时间或传输带宽的要求。基本特征:输入是图像,输出也是图像,即图像之间进行的变换。显然,这是一种比较严格的图像处理定义,因此也呈现出了某种狭义性。 图像分析的内容:主要对图象中感兴趣的目标进行检测(或分割)和测量,以获得它们的客观信息从而建立对图象的描述。基本特征:输入是图像,输出是数据(即对输入图像进行描述的信息)。 图像理解的内容:在中级图像处理的基础上,进一步研究图象中各目标的性质和它们之间相互的联系,并得出对图象内容含义的理解(对象识别)及对原来客观场景的解释(计算机视觉),从而指导和规划行动。基本特征:以客观世界为中心,借助知识、经验等来把握整个客观世界。“输入是数据,输出是理解”。 三者的关系: 图像处理是比较低层的操作,它主要在图像像素级上进行处理,处理的数据量非常大。 图像分析则进入了中层,分割和特征提取把原来以像素描述的图像转变成比较简洁的非图像形式的描述。 图像理解主要是高层操作,基本上是对从描述抽象出来的符号进行运算,其处理过程和方法与人类的思维推理有许多类似之处。 图像的低级处理阶段和高一级的处理阶段是相互关联和有一定重叠性的。根据本课程的任务和目标,重点放在图像处理上,并学习图像分析的基本理论和方法。也就是说本课程中提到的图像处理概念是广义的。 二、观察三幅图的等偏爱曲线,分析:空间分辨率和灰度分辨率同时变化对图像质量的影响

算法分析与设计-课程设计报告

XXXX大学 算法设计与分析课程设计报告 院(系): 年级: 姓名: 专业:计算机科学与技术 研究方向:互联网与网络技术 指导教师: XXXX 大学

目录 题目1 电梯调度 (1) 1.1 题目描述 (1) 1.2 算法文字描述 (1) 1.3 算法程序流程 (4) 1.4 算法的程序实现代码 (10) 题目2 切割木材 (12) 2.1题目描述 (12) 2.2算法文字描述 (12) 2.3算法程序流程 (13) 2.4算法的程序实现代码 (18) 题目3 设计题 (20) 3.1题目描述 (20) 3.2 输入要求 (20) 3.3输出要求 (20) 3.4样例输入 (20) 3.5样例输出 (20) 3.6测试样例输入 (21) 3.7测试样例输出 (21) 3.8算法实现的文字描述 (21) 3.9算法程序流程 (22) 3.10算法的程序实现代码 (23) 算法分析与设计课程总结 (26) 参考文献 (27)

题目1电梯调度 1.1 题目描述 一栋高达31层的写字楼只有一部电梯,其中电梯每走一层需花费4秒,并且在每一层楼停靠的时间为10秒,乘客上下一楼需要20秒,在此求解最后一位乘客到达目的楼层的最短时间以及具体的停靠计划。例如:此刻电梯停靠需求为4 5 10(有三位乘客,他们分别想去4楼、5楼和10楼),如果在每一层楼都停靠则三位乘客到达办公室所需要的时间为3*4=12秒、4*4+10=26秒、4*9+2*10=56秒,则最后一位乘客到达办公室的时间为56秒,相应的停靠计划为4 5 10均停靠。对于此测试用例电梯停靠计划方案:4 10,这样到第4楼的乘客所需时间为3*4=12秒,到第5楼的乘客所需时间为3*4+20=32秒,到第10楼的乘客所需时间为9*4+10=46秒,即最后到达目的楼层的顾客所需时间为46秒。 输入要求: 输入的第1行为整数n f1 f2 … fn,其中n表示有n层楼需要停靠,n=0表示没有更多的测试用例,程序终止运行。f1 f2 … fn表示需要停靠的楼层(n<=30,2<=f1

数字图像处理练习题答案解析

一、选择题 1B 、2C 、3A 、4D 、5C 、 6A 、7D 、8A 、9D 、10A 二、判断题( 正确的打√,错误的打×。 1、√ 2、√ 3、× 4、× 5、√ 6、√ 7、× 8、× 9、× 10、√ 三、 (1策略可以分为两种。一种是将一幅彩色图像看作三幅分量图像的组合体,在处理过程中先对每幅图像单独处理,再将处理结果合成为彩色图像。另一种是将一幅彩色图像中的每个象素看作具有三个属性值,即属性现在为一个矢量,需利用对矢量的表达方法进行处理。 (2一副真彩色图像既可以分解为R 、G 、B 三个分量也可以分解为H 、S 、I 三个分量图。人眼对H 、S 、I 三个分量图的感受是比较独立的。一种简便常用的真彩色增强方法步骤为:

①将RGB 分量图转化为HIS 分量图;②利用对灰度图增强的方法增强其中的一个分量图;③再将结果转换为用RGB 分量图来显示。 亮度增强,改变I 分量图,它不改变原图的彩色内容。饱和度增强,改变S 分量图,通过对S 分量图中每个象素乘以一个大于1的常数可使图像的彩色更鲜明,而如果乘以一个小于1的常数则会使图像的彩色感减少。色调增强,改变H 分量图,若对该图的每个象素加一个常数,将会使每个目标的颜色在色谱上移动。 四、 (1 算术编码为0.23355 图略 (2 发送时,要发送A 、B 、C 、D 、E 、F 的概率,并送0.23355。 (3 算术解码如下 图略 五、 (1图像混合 设图象,(y x f 为载体图像,,(y x s 为隐藏图像。对于实数a ,称 ,(1(,(,(y x s a y x af y x b -+= 为图像,(y x f 和,(y x s 的a 混合。 (2单幅迭代 对图像,(y x f 和,(y x s 进行1α混合得,(1(,(,(111y x s a y x f a y x b -+= ,对图像,(y x f 和,(1y x b 进行2α混合得,(1(,(,(1222y x b a y x f a y x b -+=,依次进行N 次混合得到,(1(,(,(1y x b a y x f a y x b N N N N --+=。可以证明,

数字图像处理与分析习题及答案

1.数字图像处理的主要研究内容包含很多方面,请列出并简述其中的4种。 ①图像数字化:将一幅图像以数字的形式表示。主要包括采样和量化两个过程。 ②图像增强:将一幅图像中的有用信息进行增强,同时对其无用信息进行抑制,提高图 像的可观察性。 ③图像的几何变换:改变图像的大小或形状。 ④图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进 行分析。 ⑤图像识别与理解:通过对图像中各种不同的物体特征进行定量化描述后,将其所期望 获得的目标物进行提取,并且对所提取的目标物进行一定的定量分析。 2.什么是图像识别与理解? 图像识别与理解是指通过对图像中各种不同的物体特征进行定量化描述后,将其所期望 获得的目标物进行提取,并且对所提取的目标物进行一定的定量分析。比如要从一幅照片上 确定是否包含某个犯罪分子的人脸信息,就需要先将照片上的人脸检测出来,进而将检测出 来的人脸区域进行分析,确定其是否是该犯罪分子。 3.简述图像几何变换与图像变换的区别。 ①图像的几何变换:改变图像的大小或形状。比如图像的平移、旋转、放大、缩小等, 这些方法在图像配准中使用较多。 ②图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进 行分析。比如傅里叶变换、小波变换等。 4.一个数字图像处理系统由哪几个模块组成? 答:一个基本的数字图像处理系统由图像输入、图像存储、图像输出、图像通信、图像处理 和分析5个模块组成 5.连续图像和数字图像如何相互转换? 答:数字图像将图像看成是许多大小相同、形状一致的像素组成。这样,数字图像可以用二维矩阵表示。将自然界的图像通过光学系统成像并由电子器件或系统转化为模拟图像(连续 图像)信号,再由模拟/数字转化器(ADC得到原始的数字图像信号。图像的数字化包括离散和量化两个主要步骤。在空间将连续坐标过程称为离散化,而进一步将图像的幅度值(可能是灰度或色彩)整数化的过程称为量化。

《算法设计与分析》考试题目及答案

《算法分析与设计》期末复习题 一、选择题 1.应用Johnson法则的流水作业调度采用的算法是(D) A. 贪心算法 B. 分支限界法 C.分治法 D. 动态规划算法 塔问题如下图所示。现要求将塔座A上的的所有圆盘移到塔座B上,并仍按同样顺序叠置。移动圆盘时遵守Hanoi塔问题的移动规则。由此设计出解Hanoi塔问题的递归算法正确的为:(B) " ; | A. void hanoi(int n, int A, int C, int B) 《 { if (n > 0) { hanoi(n-1,A,C, B); move(n,a,b); hanoi(n-1, C, B, A); B. void hanoi(int n, int A, int B, int C) { if (n > 0) { hanoi(n-1, A, C, B); ] move(n,a,b); hanoi(n-1, C, B, A); } C. void hanoi(int n, int C, int B, int A) { if (n > 0) { hanoi(n-1, A, C, B); move(n,a,b); hanoi(n-1, C, B, A); } }

3. 动态规划算法的基本要素为(C ) A. 最优子结构性质与贪心选择性质 B .重叠子问题性质与贪心选择性质 C .最优子结构性质与重叠子问题性质 D. 预排序与递归调用 4. 算法分析中,记号O 表示(B ), 记号Ω表示(A ), 记号Θ表示(D )。 … A.渐进下界 B.渐进上界 C.非紧上界 D.紧渐进界 E.非紧下界 5. 以下关于渐进记号的性质是正确的有:(A ) A.f (n)(g(n)),g(n)(h(n))f (n)(h(n))=Θ=Θ?=Θ B. f (n)O(g(n)),g(n)O(h(n))h(n)O(f (n))==?= C. O(f(n))+O(g(n)) = O(min{f(n),g(n)}) D. f (n)O(g(n))g(n)O(f (n))=?= D. void hanoi(int n, int C, int A, int B) { if (n > 0) { | hanoi(n-1, A, C, B); move(n,a,b); hanoi(n-1, C, B, A); }

相关文档
最新文档