char02 数字图像基础
- 格式:ppt
- 大小:1.90 MB
- 文档页数:42
第2章数字图像的基础知识和基本概念一、数字图像数字图像是以二进制数字组形式表示的二维图像。
利用计算机图形图像技术以数字的方式来记录、处理和保存图像信息。
在完成图像信息数字化以后,整个数字图像的输入、处理与输出的过程都可以在计算机中完成,它们具有电子数据文件的所有特性。
通常把计算机图形主要分为两大类:位图(bitmap)图像和矢量(vector)图形(如图2-1所示)。
图2-1 计算机图形的主要分类1.关于位图图像(1)概念位图图像(在技术上称作栅格图像)使用图片元素的矩形网格(像素)表现图像。
每个像素都分配有特定的位置和颜色值。
在处理位图图像时,人们所编辑的是像素。
位图图像是连续色调图像(如照片或数字绘画)最常用的电子媒介,因为它们可以更有效地表现阴影和颜色的细微层次。
(2)分辨率位图图像与分辨率有关,也就是说它们包含固定数量的像素。
因此,如果在屏幕上以高缩放比率对它们进行缩放或以低于创建时的分辨率来打印它们,则将丢失其中的细节,并会呈现出锯齿,如图2-2所示。
图2-2 不同放大级别的位图图像示例(3)特点①位图图像有时需要占用大量的存储空间。
对于高分辨率的彩色图像,由于像素之间独立,所以占用的硬盘空间、内存和显存比矢量图都大。
②位图放大到一定倍数后会产生锯齿。
位图的清晰度与像素点的多少有关。
③位图图像在表现色彩、色调方面的效果比矢量图更加优越,尤其在表现图像的阴影和色彩的细微变化方面效果更佳。
④位图的格式有bmp、jpg、gif、psd、tif、png等。
⑤处理软件:Photoshop、ACDSee、画图等。
2.关于矢量图形(1)概念矢量图形(又称矢量形状或矢量对象)是由称作矢量的数学对象定义的直线和曲线构成的。
矢量根据图像的几何特征对图像进行描述。
(2)分辨率矢量图形是与分辨率无关的,即当调整矢量图形的大小、将矢量图形打印到PostScript 打印机、在PDF文件中保存矢量图形或将矢量图形导入到基于矢量的图形应用程序中时,矢量图形都将保持清晰的边缘(如图2-3所示)。
数字图像基础数字图像定义:数字图像可以定义为与之相对应的物体的数字表示。
通常用一个二维数组表示一幅图像,也可以认为一幅图像就是一个二维矩阵。
二维矩阵的每个位置对应于图像上的每个像素点,而二维矩阵每个位置上存储的数值对应于图像上每个像素点所具有的信息,比如:灰度等等。
既然数字图像可以用二维矩阵来表示,那么数字图像的处理就可以认为是对对二维矩阵的操作。
图像的数字化:将一幅图像进行数字化的过程就是在计算机上创建生成一个二维矩阵的过程。
数字化过程包括三个步骤:扫描、采样、量化。
扫描:就是按照一定的先后顺序(如:行优先)对图像进行遍历的过程。
像素是遍历过程中寻址的最小单位,对应于数组寻址的单位。
采样:即遍历过程中在在图像的每个最小寻址单位即像素位置上测量灰度值,采样的结果是得到每一像素的灰度值。
量化:就是将采样得到的像素灰度值经过模数转换等器件转化为离散的整数值。
数字图像处理中的基本图像类型:二值图像:二值图像的矩阵仅有两个值构成即“0”和“1”。
0 表示黑色,1表示白色。
因此二值图像在计算机中的数据类型为一个二进制位。
灰度图像:灰度图像的二维矩阵每个元素的值可能都不一样,它有一个范围【0~255】,其中0表示纯黑色,255表示纯白色,中间数字表示由黑到白的过度。
其数据类型一般为8位无符号数。
索引图像:索引图像可以表示彩色图像,其结构比较复杂,除了存储图像数据的二维矩阵以外,还有一个存储RGB 颜色的二维矩阵,称为颜色索引矩阵(COLORMAP )。
存储数据的二维矩阵里面存储的仍然是图像各个像素的灰度值,而颜色索引矩阵是一个【256】【3】形式的二维矩阵,256对应于0~255个灰度值,而每行的三个分量表示对应于每个灰度值的像素点,它的RGB 分量的值。
例如:COLORMAP[38][0~2]表示灰度值为38的像素点的RGB 各分量值。
由于每个像素只有256个灰度值,而每个灰度值决定了一种颜色,所以索引图像最多有256种颜色。
2 程序的灵魂—算法 (1)2.1 算法的概念 (1)2.2 简单算法举例 (1)2.3 算法的特性 (4)2.4 怎样表示一个算法 (4)2.4.1 用自然语言表示算法 (4)2.4.2 用流程图表示算法 (4)2.4.3 三种基本结构和改进的流程图 (8)2.4.4 用N-S流程图表示算法 (9)2.4.5 用伪代码表示算法 (10)2.4.6 用计算机语言表示算法 (11)2.5 结构化程序设计方法 (11)2程序的灵魂—算法一个程序应包括:●对数据的描述。
在程序中要指定数据的类型和数据的组织形式,即数据结构(datastructure)。
●对操作的描述。
即操作步骤,也就是算法(algorithm)。
Nikiklaus Wirth提出的公式:数据结构+算法=程序教材认为:程序=算法+数据结构+程序设计方法+语言工具和环境这4个方面是一个程序涉及人员所应具备的知识。
本课程的目的是使同学知道怎样编写一个C程序,进行编写程序的初步训练,因此,只介绍算法的初步知识。
2.1 算法的概念做任何事情都有一定的步骤。
为解决一个问题而采取的方法和步骤,就称为算法。
●计算机算法:计算机能够执行的算法。
●计算机算法可分为两大类:⏹数值运算算法:求解数值;⏹非数值运算算法:事务管理领域。
2.2 简单算法举例【例2.1】求1×2×3×4×5。
最原始方法:步骤1:先求1×2,得到结果2。
步骤2:将步骤1得到的乘积2乘以3,得到结果6。
步骤3:将6再乘以4,得24。
步骤4:将24再乘以5,得120。
这样的算法虽然正确,但太繁。
改进的算法:S1: 使t=1S2: 使i=2S3: 使t×i, 乘积仍然放在在变量t中,可表示为t×i→tS4: 使i的值+1,即i+1→iS5: 如果i≤5, 返回重新执行步骤S3以及其后的S4和S5;否则,算法结束。
如果计算100!只需将S5:若i≤5改成i≤100即可。