图像滤波器
图像噪声
图像噪声是图像在获取或是传输过程中受到随机信号干扰,妨碍人们对图像理解及分析处理
的信号。
高斯噪声
- 高斯噪声(Gaussian noise)是指它的概率密度函数服从高斯分布的一类噪声。
- 特别的,如果一个噪声,它的幅度分布服从高斯分布,而它的任意两个采样样本之间不相关,则
称它为高斯白噪声。
一个正常的高斯采样分布公式, 得到输出像素Pout. Pout = Pin + random.gauss
其中random.gauss是通过sigma和mean来生成符合高斯分布的随机数。
给一副数字图像加上高斯噪声的处理顺序如下:
a. 输入参数sigma 和 mean
b. 生成高斯随机数
d. 根据输入像素计算出输出像素
e. 重新将像素值放缩在[0 ~ 255]之间
f. 循环所有像素
g. 输出图像
椒盐噪声
椒盐噪声 = 椒噪声 (pepper noise)+ 盐噪声(salt noise)。 椒盐噪声的值为0(椒)或者255(盐)。
给一副数字图像加上椒盐噪声的处理顺序:
1.指定信噪比 SNR(信号和噪声所占比例) ,其取值范围在[0, 1]之间
2.计算总像素数目 SP, 得到要加噪的像素数目 NP = SP * SNR
3.随机获取要加噪的每个像素位置P(i, j)
4.指定像素值为255或者0。
5.重复3, 4两个步骤完成所有NP个像素的加噪
图像滤波
图像滤波,即在尽量保留图像细节特征的条件下对目标图像的噪声进行抑制,是图像预处理中不可缺少
的操作,其处理效果的好坏将直接影响到后续图像处理和分析的有效性和可靠性。
各种滤波器
线性滤波
均值滤波
中值滤波
最大最小值滤波
图像增强
图像增强可以分为两种:
• 点处理技术。只对单个像素进行处理。
• 领域处理技术。对像素点及其周围的点进行处理,即使用卷积核。
点处理
- 线性变换
- 分段线性变换
- 对数变换
- 幂律变换/伽马变换
幂律变换主要用于图像的校正,对漂白的图片或者是过黑的图片进行修正。
领域处理
- 直方图均衡化
- 图像滤波
图像增强常用方法(包括但不限于):
- 翻转、平移、旋转、缩放
- 分离单个r、g、b三个颜色通道
- 添加噪声
- 直方图均衡化
- Gamma变换
- 反转图像的灰度
- 增加图像的对比度
- 缩放图像的灰度
- 均值滤波
- 中值滤波
- 高斯滤波
特征选择
特征选择定义
从N个特征中选择其中M(M<=N)个子特征,并且在M个子特征中,准则函数
可以达到最优解。
特征选择想要做的是:选择尽可能少的子特征,模型的效果不会显著下降,并且
结果的类别分布尽可能的接近真实的类别分布。
特征选择包含4个过程
1. 生成过程:生成候选的特征子集
2. 评价函数:评价特征子集的好坏
3. 停止条件:决定什么时候该停止
4. 验证过程:特征子集是否有效
特征提取(重点)
定义
特征提取:是通过属性间的关系,如组合不同的属性得到新的属性,这样就改变了原来的特征空间。
特征选择:是从原始特征数据集中选择出子集,是一种包含的关系,没有更改原始的特征空间。
目前图像特征的提取主要有两种方法:传统图像特征提取方法 和 深度学习方法。
- 传统的特征提取方法:基于图像本身的特征进行提取;
- 深度学习方法:基于样本自动训练出区分图像的特征分类器;
特征选择(feature selection)和特征提取(Feature extraction)都属于降维(Dimension reduction)
特征提取主要方法:PCA主成分分析
一般步骤是这样的:
- 对原始数据零均值化(中心化),
- 求协方差矩阵,
- 对协方差矩阵求特征向量和特征值,这些特征向量组成了新的特征空间。
PCA --零均值化(中心化)
中心化即是指变量减去它的均值,使均值为0。
PCA降维的几何意义
方差:离散程度
PCA算法的优化目标:
- 降维后同一纬度的方差最大
- 不同维度之间的相关性为0
PCA-协方差
协方差就是一种用来度量两个随机变量关系的统计量。
同一元素的协方差就表示该元素的方差,不同元素之间的协方差就表示它们的相关性。
PCA-对协方差矩阵求特征值、特征矩阵
A为n阶矩阵,若数λ和n维非0列向量x满足Ax=λx,那么数λ称为A的特征值,x称为A的对应于特征值λ
的特征向量。
或写成( A-λE)x=0,E是单位矩阵,并且|A-λE|叫做A 的特征多项式。当特征多项式等于0的
时候,称为A的特征方程,特征方程是一个齐次线性方程组,求解特征值的过程其实就是求解特征方
程的解。
PCA算法的优缺点
优点:
- 完全无参数限制的。在PCA的计算过程中完全不需要人为的设定参数或是根据任何经验模型对计算
进行干预,最后的结果只与数据相关,与用户是独立的。 - 用PCA技术可以对数据进行降维,同时对新求出的“主元”向量的重要性进行排序,根据需要取前面
最重要的部分,将后面的维数省去,可以达到降维从而简化模型或是对数据进行压缩的效果。同时
最大程度的保持了原有数据的信息。 - 计算方法简单,易于在计算机上实现。
缺点:
- 如果用户对观测对象有一定的先验知识,掌握了数据的一些特征,却无法通过参数化等方法对处理
过程进行干预,可能会得不到预期的效果,效率也不高。
作业
1、高斯噪点
# -*- coding: utf-8 -*-
'''@Time: 2024/4/16 21:29
高斯噪音
'''
import random
import numpy as np
import cv2
from PIL import Image
from skimage import util
#1、使用random.normal
image = cv2.imread("../lenna.png"