数字图像处理学习笔记2

第二章 数字图像处理的基础 (附matlab实验)

2.1 人类的视觉感知系统

基本构造

光接受器主要包括视锥细胞视杆细胞

​ 视锥细胞:在视网膜中间的中间凹,非常薄,具有辨别光波波长的能力,对颜色十分敏感,也被称为白昼视觉

​ 视杆细胞:亮密度高,但是没有辨别颜色的能力,也被成为夜视觉

晶状体具有适应性。晶状体的形状由睫状体韧带和张力来控制,为了对远方的物体聚焦,控制肌肉使晶状体相对比较扁平。同样,为对眼睛近处的物体聚焦,肌肉会使晶状体变得较厚。

视觉过程

当人眼接收光刺激时,首先是条件反射,由视网膜神经进行处理。随后图像信号通过视觉通道反映到大脑皮层,大脑皮层做出相应的处理。

光刺激
视网膜接收_左眼
视网膜神经处理_左眼
视觉通道
视网膜接收_右眼
视网膜神经处理_右眼
大脑皮层处理

其中,大脑皮层处理包括五个阶段:

  1. 存储参考图像
  2. 信息处理
  3. 特征提取
  4. 决策
  5. 描述

亮度适应和鉴别

主观亮度是进入眼睛的光强度的对数。

两个现象可以证明感觉亮度不是简单的强度函数。

  1. 基于视觉系统倾向于不同亮度区域边界周围的“欠调”和“过调”。例如马赫带效应:虽然条带强度恒定,但实际感觉到了一幅带有毛边的亮度图形。
  2. 同时对比现象:感觉的亮度区域不是简单地取决于强度。
    在这里插入图片描述
    在这里插入图片描述

2.2 数字图像的基础知识

图像的数字化及表达

任意一副图像,根据它的光强度(亮度、密度和灰度)的空间分布,可以用一个函数形式表达:

I = f(x,y,z,λ,t)

其中x y z是空间坐标,t为时间,λ为波长,I是图像点的光强度。

对于静态图像,t为常数。对于单色图像,λ为常数。对于平面图像z为常数。

静态平面单色图像,其数学表达式可以简化为I=f(x,y):
在这里插入图片描述

两个下标x,y分别表示图像在空间中的位置,I表示一定位置下图像的灰度值(表示的是平面中某个点的什么什么样的灰色)

一般的模拟图像是不能直接用数字计算机来处理的。为使图像能在数字计算机内进行处理,首先必须将各类模拟图像转化为数字图像。就是把图像分割成称为像素的小区域,每个像素的亮度或灰度值用一个整数或小数来表示。

图像的获取

图像的获取即图像的数字化过程,包括:扫描、采样、量化

图像获取设备的性能:

​ 线性度:对光强进行数字化时,灰度正比于图像亮度的实际精确程度是一个重要的指标。

1.图像的采样

将空间中连续的图像转换成离散的点的操作。

关键参数:采样率、采样孔大小。

图像f(x,y)乘以一个空间采样函数。

在采样时,若横向的像素数(列数)为M ,纵向的像素数(行数)为N,则图像总像素数为M*N个像素。

2.图像的量化

图像被采样后被分割为空间上离散的像素,但是现在其灰度仍是连续的,将像素灰度转换成离散的整数值的过程称为量化。

8bit量化:用2的8次方256个不同的灰度值表示灰度,灰度级数G=256。

若连续灰度值用z来表示,对于满足z≤zi+1的z值,都量化为整数qi。qi称为像素的灰度值,zzi≤与qi的差称为量化误差。


图像采样与量化对图像效果的影响见实验结论。

假定图像取M×N个样点,每个像素量化后的灰度二进制位数为Q,一般Q总是取为2的整数幂,即Q=2^k, 则存储一幅数字图像所需的二进制位数b为: b = M * N * Q

字节数B:B = M * N * Q / 8

均匀采样、量化:等间隔的采样和量化。

非均匀采样、量化:非均匀采样,根据图像的细节丰富程度改变采样间距。非均匀量化,像素频度少的间隔大,出现频度大的间隔小。

量化和采样是的原则:

  1. 缓变的图像,应该细量化、粗采样,以避免假轮廓。
  2. 细节丰富的图像,应细采样、粗量化,以避免模糊(混叠)。

2.3 像素间的基本关系

① 设p为位于坐标(x,y)处的一个像素,则p的四个水平和垂直相邻像素的坐标为:(x+1,y),(x-1,y),(x,y+1),(x,y-1)

这四个点组成p的4邻域,用N4§表示。

如图:

在这里插入图片描述

② 像素p的四个对角相邻像素的坐标为:(x+1,y+1),(x+1,y-1),(x-1,y+1),(x-1,y-1)

这四个点组成的像素集用ND§表示。

如图:

在这里插入图片描述

N4§和ND§组成p的8邻域

在这里插入图片描述

像素间的连通性是一个基本概念,它简化了许多数字图像概念的定义,如区域和边界。描述区域和边界的重要概念。常见的包括4连通和8连通。

两个像素连通的两个必要条件是:

  1. 两个像素的位置相邻。
  2. 两个像素的灰度值满足特定的相似性准则(或者相等)

4连通:对于具有值V的像素p和q,如果q在集合N4§中,则称这两个像素是4连通的。

在这里插入图片描述

8连通:对于具有值V的像素p和q,如果q在集合N8§中,则称这两个像素是8连通的。
在这里插入图片描述

对于像素p、q和z,分别具有坐标(x,y),(s,t)和(u,v),如果

  1. D(p,q) ≥ 0 (D(p,q)=0,当且仅当p =q)
  2. D(p,q) = D(q,p)
  3. D(p,z) ≤ D(p,q) + D(q,z)

则成D是距离函数或者度量。


① 像素p(x,y)和q(s,t)间的欧式距离

在这里插入图片描述

与点(x,y)的距离小于等于某个值d的像素组成以(x,y)为中心、以d为半径的圆。

② 像素p(x,y)和q(s,t)之间的D4距离(也叫城市街区距离):
在这里插入图片描述

在这里插入图片描述

③ 像素p(x,y)和q(s,t)之间的D8距离(也称棋盘距离):
在这里插入图片描述

2.4 数字图像类型

数字图像类型

  • 静态图像:
    • 矢量图 Vector
    • 位图 Bitmap
      • 二值图像
      • 亮度图像
      • 索引图像
      • RGB图像
  • 动态图像

矢量图是用一系列绘图指令来表示一幅图。这种方法的本质是用数学公式描述一幅图像中的元素。

优点:

  1. 矢量图与分辨率无关,无论将图像放大或缩小了多少次,图像总是以显示设备允许的最大清晰度显示。
  2. 文件数据量很小。
  3. 公式化表示图像。

缺点:

  1. 不宜制作色调丰富或色彩变化太多的图像。
  2. 绘出来的图像不是很逼真。
  3. 不宜在不同的软件间交换文件。

位图图像是通过许多像素点表示一幅图像,每个像素具有颜色属性和位置属性。二进制位与图像之间存在严格的“位映射”关系。具有位映射关系的图叫作位图。位图与分辨率有关。放大位图时胡产生锯齿现象,低于图像分辨率的精度打印位图时,会出现丢失细节和边缘锯齿的现象。

二值图像:只有黑白两种颜色。黑为0,白为1。二值图像适合于由黑白两色构成而没有灰度阴影的图像。

灰度图像:像素灰度级用8bit表示,所以每个像素都是介于黑色和白色之间的256(28=256)种灰度中的一种。灰度图像只有灰度颜色而没有彩色。我们通常所说的黑白照片,其实包含了黑白之间的所有灰度色调。

索引图像:在这种模式下,颜色都是预先定义的,并且可供选用的一组颜色也很有限,索引颜色的图像最多只能显示256种颜色。

RGB图像(真彩色图像):每一个像素由红、绿和蓝三个字节组成,每个字节为8 bit,表示0到255之间的不同的亮度值,这三个字节组合可以产生1670万种不同的颜色

位图术语

像素(Pixel) :在计算机中,图像是由显示器上许多光点组成的,将显示在显示器上的这些点(光的单元)称为像素。

图像分辨率(Resolution) :图像分辨率是指每英寸图像含有多少个点或像素,分辨率的单位为dpi。

屏幕分辨率:显示器上每单位长度显示的像素或点的数量称为屏幕分辨率。屏幕分辨率由计算机的显示卡决定。

打印机分辨率:指打印机输出图像时每英寸的点数(dpi)。

2.5 实验 图像采样与量化

实验内容:

(1)对图像分别采样为256x256、128x128、64x64的图像。

(2)对图像分别量化为64级灰度图像、32级灰度图像和8级

(1)程序
Image=imread('face.jpg');
size(Image);%512*512
Image1=Image(1:2:end,1:2:end);
Image2=Image(1:4:end,1:4:end);
Image3=Image(1:8:end,1:8:end);
size(Image1);%256*256
size(Image2);%128*128
size(Image3);%64*64

figure;
subplot(2,2,1);
imshow(Image);
xlabel('原图');

subplot(2,2,2);
imshow(Image1);
xlabel('采样为256*256');

subplot(2,2,3);
imshow(Image2);
xlabel('采样为128*128');

subplot(2,2,4);
imshow(Image3);
xlabel('采样为64*64');

(2)程序

new_Image=imread('face.jpg');
new_Image1=histeq(new_Image1,64);
new_Image2=histeq(new_Image1,32);
new_Image3=histeq(new_Image1,8);
figure;
subplot(2,2,1)
imshow(new_Image)
xlabel('原图');

subplot(2,2,2)
imshow(new_Image1)
xlabel('64级灰度图');

subplot(2,2,3)
imshow(new_Image2)
xlabel('32级灰度图');

subplot(2,2,4)
imshow(new_Image3)
xlabel('8级灰度图');

实验结论 即图像采样与量化对图像效果的影响

一般来说,采样间隔越大,所得图像像素数越少,空间分辨率越低,图像质量就越差,严重时则会出现马赛克效应;反之,采样间隔越小,所得图像像素数越多,空间分辨率越高,图像质量就越好,但数据量大。图1展示了通过不同的采样点数对图像进行采样时,会出现不同的效果,原图分辨率为512像素512像素,在采样率为256像素256像素和128像素128像素时,图片质量变化不明显,但在采样率为64像素64像素时图像质量出现明显下降。由此可知,采样间隔的大小严重影响图像的质量。

new_Image3)
xlabel(‘8级灰度图’);


### 实验结论 即图像采样与量化对图像效果的影响

一般来说,采样间隔越大,所得图像像素数越少,空间分辨率越低,图像质量就越差,严重时则会出现马赛克效应;反之,采样间隔越小,所得图像像素数越多,空间分辨率越高,图像质量就越好,但数据量大。图1展示了通过不同的采样点数对图像进行采样时,会出现不同的效果,原图分辨率为512像素*512像素,在采样率为256像素*256像素和128像素*128像素时,图片质量变化不明显,但在采样率为64像素*64像素时图像质量出现明显下降。由此可知,采样间隔的大小严重影响图像的质量。

图像的量化等级越多,所得图像层次越丰富,灰度分辨率越高,图像质量好,但数据量大;反之量化等级越少,图像层次欠丰富,灰度分辨率越低会出现假轮廓现象,图像质量变差,但数据量小。图2展示了不同量化等级对应的图像效果,其中图2(a)时量化等级为256bit的原图。图2(b)~图2(d)的量化等级分别为64bit、32bit、8bit。从图片的显示效果可以明显地看出,量化等级对图像的质量影响非常的大,所以在对图像进行量化时要根据情况选择合适的量化等级。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VC6下数字图像处理系统-DIP_system,包含以下功能函数: ============================================================================== 第3章 ============================================================================== 相关函数: PaintDIB() - 绘制DIB对象 CreateDIBPalette() - 创建DIB对象调色板 FindDIBBits() - 返回DIB像象素起始位置 DIBWidth() - 返回DIB宽度 DIBHeight() - 返回DIB高度 PaletteSize() - 返回DIB调色板大小 DIBNumColors() - 计算DIB调色板颜色数目 CopyHandle() - 拷贝内存块 DIBBitCount() - 该函数返回DIBBitCount SaveDIB() - 将DIB保存到指定文件 ReadDIBFile() - 重指定文件读取DIB对象 SetRgnColor() - 用指定的颜色填充指定的区域 SetCircleColor() - 用指定的颜色填充指定的圆形区域 以上函数为类CDIB的成员函数,CDIB类存在于DIB.h、DIB.cpp文件。 ============================================================================== 第4章 ============================================================================== 4.1 象的灰度变换 相关函数: ToGray() - 彩色位转化为灰度位 PointInvert() - 对像进行反色变换 GetIntensity() - 对像各颜色分量的灰度分布(数目、密度)进行统计 PointEqua() - 对像进行灰度分布均衡化处理 GrayStretch() - 对像进行灰度折线变换 WindowTrans() - 对像进行灰度窗口变换 PointDZ() - 对像进行灰度带阻变换 PointDT() - 对像进行灰度带通变换 PointSML() - 对像进行单映射规则直方规定化变换 PointGML() - 对像进行组映射规则直方规定化变换 DynamicCompress()- 对像进行灰度动态范围压缩处理 CutWave() - 对像进行灰度削波处理 以上函数为类CGrayProc的成员函数,CGrayProc类存在于GrayProc.h、GrayProc.cpp文件。 4.2 象的正交变换 相关函数: FFT() - 一维快速付立叶变换 IFFT() - 一维快速付立叶逆变换 Fourier() - 二维快速傅立叶变换 IFourier() - 二维快速傅立叶逆变换 DCT() - 一维快速离散余弦变换 IDCT() - 一维快速离散余弦逆变换 FreqDCT() - 二维快速离散余弦变换 IFreqDCT() - 二维快速离散余弦逆变换 WALSH() - 一维沃尔什-哈达玛变换 IWALSH() - 一维沃尔什-哈达玛逆变换 FreqWALSH() - 二维沃尔什-哈达玛变换 IFreqWALSH()- 二维沃尔什-哈达玛逆变换 DIBFourier()- 像的付立叶变换 DIBDCT() - 像的离散余弦变换 DIBWalsh() - 像的沃尔什-哈达玛变换 以上函数为类CFreqCalculate的成员函数,CFreqCalculate类存在于FreqCalculate.h、FreqCalculate.cpp文件。 ============================================================================== 第5章 ============================================================================== 5.1 像的空域滤波 相关函数: MakeEmboss() -

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值