【数字图像处理】数字图像基础
目录
说明
- 本系列用于记录数字图像处理的学习笔记,课程为中国科学院大学焦建彬老师的数字图像处理
- 本篇为数字图像基础
采样与量化
采样
- 概念
对空间连续坐标(x,y)的离散化,又称为取样、抽样 - 图像的采样
量化
- 概念
对幅值f(x,y)的离散化 - 图像的量化
- 量化的方法
按量化级步长是否均匀划分- 均匀量化
连续灰度值等间隔分层。层越多,产生的量化误差越小。 - 非均匀量化
- 基于视觉特性
对亮度值急剧变化部分
无需过细分层,进行粗量化
,对亮度值平缓变化部分(图像的细节部分)
需细分层,进行细量化
- 基于统计特性
先计算所有可能的亮度值出现的概率分布,对概率分布大
的进行细量化
,对概率分布小
的进行粗量化
- 基于视觉特性
- 均匀量化
图像上采样与下采样
- 上采样(upsampling)目的
放大图像 - 下采样(downsampling)目的
- 使得图像符合显示区域的大小
- 生成对应图像的缩略图
注: 对图像的缩放并不能带来更多关于该图像的信息,因此图像的质量将不可避免地受到影响。
- 下采样原理
假设图像尺寸为 M × N M \times N M×N,对其进行s倍下采样,即得到 ( M / s ) × ( N / s ) (M/s) \times (N/s) (M/s)×(N/s)尺寸分辨率的图像- 如果s是M和N的公约数,新像素点的灰度值可以取原始图像 s × s s\times s s×s窗口内所有像素的均值
- 如果s不是M和N的公约数,或者对图像进行放大,则可以采用
图像插值
的方法来获得新像素点的灰度值
- 常用插值方法
- 最近邻插值法
- 直接取原图像中与其距离最近的像素的灰度值作为该点的灰度值
- 计算量少,但可能会造成插值生成的图像灰度上的不连续,在灰度变化的地方可能会出现明显的锯齿
- 线性插值法(以双线性插值为例)
- 目标图像中新产生的像素值,由源图像位置在它附近的 2 × 2 2\times 2 2×2区域4个邻近像素值通过加权平均计算得出
- 例如:
假设四个邻接点为:
Q1=(x1,y1),Q2=(x2,y2),Q1=(x3,y3),Q4=(x4,y4)
- 首先在x方向线性插值,得到:
f ( R 1 ) ≈ x 2 − x x 2 − x 1 f ( Q 11 ) + x − x 1 x 2 − x 1 f ( Q 21 ) , 其 中 R 1 = ( x , y 1 ) f(R_1)\approx \frac{x_2-x}{x_2-x_1}f(Q_{11})+\frac{x-x_1}{x_2-x_1}f(Q_{21}),其中R_1=(x,y_1) f(R1)≈x2−x1x2−xf(Q11)+x2−x1x−x1f(Q21),其中R1=(x,y1)
f ( R 2 ) ≈ x 2 − x x 2 − x 1 f ( Q 12 ) + x − x 1 x 2 − x 1 f ( Q 22 ) , 其 中 R 2 = ( x , y 2 ) f(R_2)\approx \frac{x_2-x}{x_2-x_1}f(Q_{12})+\frac{x-x_1}{x_2-x_1}f(Q_{22}),其中R_2=(x,y_2) f(R2)≈x2−x1x2−xf(Q12)+x2−x1x−x1f(Q22),其中R2=(x,y2) - 然后在y方向进行线性插值,得到:
f ( x , y ) ≈ y 2 − y y 2 − y 1 f ( R 1 ) + y − y 1 y 2 − y 1 f ( R 2 ) f(x,y)\approx \frac{y_2-y}{y_2-y_1}f(R_1)+\frac{y-y_1}{y_2-y_1}f(R_2) f(x,y)≈y2−y1y2−yf(R1)+y2−y1y−y1f(R2)
注: 约等于的原因是采用量化的方法而取整数
- 最近邻插值法
图像的表示与描述
图像的数学表示
计算机内图像表示方式
-
灰度图像
:像素的灰度级通常为8bits,即0~255,常用来验证算法 -
二值图像
:用0和1表示图像,即黑白图像 -
彩色图像
:用RGB三通道表示图像,每个通道即为灰度图像
像素间的一些基本关系
像素的领域
-
概念
一个像素的邻近像素组成该像素的领域 -
类型(下图以p作为参考像素)
- 4-邻域N4(p) :如上图(a)所示,
r
所在位置即为p
的4-邻域 - 对角领域ND(p):如上图(b)所示,
s
所在位置即为p
的对角邻域 - 4-邻域N8(p) :如上图(c)所示,
r
和s
所在位置即为p
的8-邻域
注: 若像素p本身处在图像的边缘,则它的N4(p)、ND(p)、N8(p)中的若干像素将落在图像之外
- 4-邻域N4(p) :如上图(a)所示,
像素的邻接
- 概念
一个像素与在它领域中的像素是接触的,称为邻接的 - 类型
与邻域相对应,即包括4-邻接、对角邻接、8-邻接
注: 邻接仅考虑了像素间的空间关系
像素的连接
- 概念
- 类型
- 对m-连接的说明
- m-连接中条件二的解释
- m-连接作用:消除使用8-连接时常出现的多路问题
即对于图(a)所示图像,若使用8-连接则有两条通路连接(1,1)到(0,2),而使用m-连接即可消除二义性 - m-连接的实质:在像素间同时存在4-连接和8-连接时,
优先采用4-连接
,并屏蔽掉两个和同一像素间存在4+连接的像素之间的8-连接
- m-连接中条件二的解释
像素的通路
- 概念
- 类型
与邻域相对应,即4-通路、8-通路
像素集合间的邻接、连接、连通
像素间的距离
- 说明
像素在空间的接近程度可以用像素间的距离来测量 - 表示方法:
-
DE距离,即欧式距离
D E ( p , q ) = [ ( x 1 − x 2 ) 2 + ( y 1 − y 2 ) 2 ] 1 2 D_E(p,q) = [(x_1-x_2)^2+(y_1-y_2)^2]^\frac{1}{2} DE(p,q)=[(x1−x2)2+(y1−y2)2]21 -
D4距离,即曼哈顿距离
D 4 ( p , q ) = ∣ x 1 − x 2 ∣ + ∣ y 1 − y 2 ∣ D_4(p,q) =|x_1-x_2| + |y_1-y_2| D4(p,q)=∣x1−x2∣+∣y1−y2∣ -
D8距离,即棋盘距离/切比雪夫距离
D 8 ( p , q ) = m a x ( ∣ x 1 − x 2 ∣ , ∣ y 1 − y 2 ∣ ) D_8(p,q) =max(|x_1-x_2|,|y_1-y_2|) D8(p,q)=max(∣x1−x2∣,∣y1−y2∣) -
举例
-
Dm距离
-
常用数学工具介绍
阵列与矩阵操作
注: 若无特殊说明,以后图像操作均假定为阵列操作
线性操作与非线性操作
空间操作
概率方法
- 矩
随机变量z关于均值m的第n阶矩的定义为 μ n ( z ) = ∑ m = 0 L − 1 ( z k − m ) n p ( z k ) \mu_n(z)=\sum_{m=0}^{L-1}(z_k-m)^np(z_k) μn(z)=m=0∑L−1(zk−m)np(zk)
可见
n=0时, μ 0 ( z ) = 1 \mu_0(z)=1 μ0(z)=1
n=1时; μ 1 ( z ) = 0 \mu_1(z)=0 μ1(z)=0
n=2时, μ 2 ( z ) = ∑ m = 0 L − 1 ( z k − m ) 2 p ( z k ) \mu_2(z)=\sum_{m=0}^{L-1}(z_k-m)^2p(z_k) μ2(z)=∑m=0L−1(zk−m)2p(zk),即灰度的方差 σ 2 \sigma^2 σ2-
方差
是图像像素值关于均值的展开度的度量 -
三阶矩
也称为“偏度”,用来衡量灰度分布是否有偏移,如果为正值
,表明其灰度分布集中于高于平均值的部分,如果为负
,则集中于低于平均值的部分,如果为0
,则表示灰度分布比较均匀。 -
矩特征
主要表征了图像区域的几何特征
,又称为几何矩
-
数字图像处理基本运算
像素级运算
-
点运算
- 线性点运算
I o u t ( x , y ) = a ⋅ I i n ( x , y ) + b I_{out}(x,y)=a\cdot I_{in}(x,y)+b Iout(x,y)=a⋅Iin(x,y)+b
b < 0 b = 0 b > 0 a < 0 黑白反转(负片:a=-1,b=255),降低亮度 黑白反转(负片:a=-1,b=255) 黑白反转(负片:a=-1,b=255),增加亮度 a = 0 — 输入图片与输出图片恒等 — |a| < 1 降低对比度,降低亮度 降低对比度 降低对比度,增加亮度 |a| > 1 增加对比度,降低亮度 增加对比度 增加对比度,增加亮度 - 非线性点运算
非线性点运算对应于非线性映射函数,典型的包括平方函数
,对数函数
,截取(窗口函数)
,阈值函数
,多值量化函数
等 - 点运算特点
- 从像素到像素的操作
- 点运算针对图像中的每一个像素灰度,独立地进行灰度值的改变
- 输出图像中每个像素点的灰度值,仅取决于相应输入像素点的 值
- 点运算不改变图像内的空间关系
- 点运算可完全由灰度变换函数或灰度映射表确定
- 线性点运算
-
算术运算
即两幅图像的+
、-
、x
、÷
操作(对应元素操作,即阵列
操作) -
逻辑运算
- 求反
g ( x , y ) = R − f ( x , y ) , 其 中 R 为 f ( x , y ) 的 灰 度 级 g(x,y)=R-f(x,y),其中R为f(x,y)的灰度级 g(x,y)=R−f(x,y),其中R为f(x,y)的灰度级 - 异或
g ( x , y ) = f ( x , y ) ⊕ h ( x , y ) g(x,y)=f(x,y)\oplus h(x,y) g(x,y)=f(x,y)⊕h(x,y) - 其余逻辑操作
- 求反