• 数字图像处理——基本运算


    一:一些概念

    1.1:相邻像素

    相邻像素(对于像素p(m,n))

    • 4邻域:N4(p)
    • 对角邻域:ND(p)
    • 8邻域:N8(8)

    像素邻接:像素的相邻仅说明了两个像素在位置上的关系,若再加上取值相同或相近,则称两个像素邻接

    在这里插入图片描述

    1.2:像素距离

    距离的度量:对于像素点 p(x,y), q(s,t), z,如果度量D满足以下条件,则称为距离的度量函数

    • 正定性: 𝐷(𝑝, 𝑞) ≥ 0; (𝑖𝑓 𝑝 = 𝑞, 𝐷(𝑝, 𝑞) = 0)
    • 对称性: 𝐷(𝑝, 𝑞) = 𝐷(𝑞, 𝑝)
    • 距离三角不等式: 𝐷(𝑝, 𝑞) ≤ 𝐷(𝑝, 𝑧) + 𝐷(𝑧, 𝑞)

    三种常见距离:

    • 欧式距离 (像素点 p(x,y), q(s,t)) : 𝐷𝑒(𝑝, 𝑞) = sqrt((𝑥 − 𝑠)2+(𝑦 − 𝑡)2)
    • D4距离(街区距离):𝐷4(𝑝, 𝑞) = |𝑥 − 𝑠| + |𝑦 − 𝑡|
    • D8距离(棋盘格距离):𝐷8(𝑝, 𝑞) = max(|𝑥 − 𝑠| , |𝑦 − 𝑡|)

    在这里插入图片描述

    二:算数运算

    算术运算是指对两幅或多幅输入图像进行点对点的加、减、乘、除计算而得到输出图像的运算

    • 对应空间位置的像素间运算,element-wise / pixel-wise
    • 在相同大小的图像间进行

    在这里插入图片描述

    2.1:图像加法

    图像加法,以加权融合为例:

    • l_1 + l_2 = S_1
    • 0.6 * l_1 + 0.4 * l_2 = S_2

    在这里插入图片描述

    2.2:图像减法

    图像减法,以一阶导数为例,图像的一阶和二阶导数:不连续函数f(x,y)的导数, 严格来说不算能算作导数, 只是形式上与真正的导数相似. 取Δx=1, 一阶与二阶偏导数分别为:

    在这里插入图片描述
    在这里插入图片描述

    图像加、减法,以图像锐化为例:

    • H = X – blur(X)
    • Y = X +ɑH

    在这里插入图片描述

    2.3:图像乘法

    图像乘法:对应像素相乘,常用于Mask、Attention等操作
    在这里插入图片描述

    2.4:算术运算应用示例

    低照度图像增强(Low Light Image Enhancement)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    三:直方图运算

    图像直方图(Image Histogram):描述图像的各个灰度级的统计特性,它是图像灰度值的函数,统计图像中各个灰度级出现的次数或频率。其横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数和频率。

    直方图运算计算代价较小,且具有图像平移、旋转、缩放不变性等众多优点,广泛地应用于图像处理的各个领域,特别是灰度图像的阈值分割、基于颜色的图像检索以及图像分类。

    3.1:灰度直方图

    直方图是图像的一种统计表达 ,直方图反映了图像中灰度的分布情况。

    直方图并不反映图像的空间信息,只展示具有一定灰度级的像素的数目或频数,通过对图像的直方图进行改变可以改善图像的质量

    设图像中某种灰度rk的像素数为nk,n是图像中像素的总数,则灰度级rk所对应的频数为:
    在这里插入图片描述

    四类图像的直方图特征:
    在这里插入图片描述

    3.2:直方图均衡化

    直方图均衡化(Histogram Equalization)通过某种灰度映射(如非线性拉伸)使原始图像的直方图变换为在整个灰度范围内均匀分布,即灰度的概率密度分布变为常数。可以增加像素灰度值的动态范围,增强图像整体对比度。
    在这里插入图片描述

    累积分布函数CDF可以把r变换到均衡化s,证明如下:

    在这里插入图片描述
    在这里插入图片描述

    离散情况:累积直方图
    在这里插入图片描述
    说明:

    • 𝑠𝑘是 k 的单值单增函数
    • 灰度取值范围一致,0 ≤ 𝑠𝑘 ≤ 1
    • 将r的分布转换为s 的均匀分布

    在这里插入图片描述

    均衡化的缺点

    • 增强效果不易控制,处理的结果总是得到全局均匀化的直方图。
    • 均衡化图像的动态范围扩大,本质上是扩大了量化间隔,但量化级别(灰度级)反而减少了,导致某些图像细节消失。
    • 对于直方图存在高峰的图像,经处理后对比度可能过分增强。
    • 原来灰度值不同的像素经过处理后可能变为相同,从而形成一片灰度值相同的区域,各区域之间有明显的边界,导致出现伪轮廓。

    3.3:直方图规定化

    直方图规定化(Histogram Matching):也常叫直方图匹配,指变换图像灰度直方图为指定的分布,从而有选择地增强某个灰度范围内的对比度

    • 比均衡化更灵活,可以指定目标分布
    • 能有效地改善图像的整体或局部特征,广泛运用在图像增强处理中
    • 保证不同图像的影调风格的一致性,在处理艺术图像时十分有用

    在这里插入图片描述

    直方图规定化的步骤,借助直方图均衡变换实现规定的灰度映射:
    在这里插入图片描述
    在这里插入图片描述

    单映射规则SML (Single Mapping Law):依次找到灰度级映射后的单个灰度级,逐个对应。比较直观,但可能产生较大的取整误差。

    在这里插入图片描述

    组映射规则GML (Group Mapping Law):寻找最接近的对应灰度,中间的灰度级看作一组。映射误差用对应映射间数值的差值的绝对值的和来度量。

    在这里插入图片描述
    GML映射规则产生的误差小于SML。

    SML: |0.44-0.2|+ |0.45-0.6|+|0.11-0.2|=0.48
    GML: |0.19-0.2|+ |0.62-0.6|+|0.19-0.2|=0.04
    
    • 1
    • 2

    在这里插入图片描述

    3.4:直方图运算应用示例

    神经风格迁移

    • Image Style Transfer Using Convolutional Neural Networks(使用卷积神经网络的图像风格转换)
      • Gatys 2015: S和O是VGG网络特定层输出的特征;G为计算Gram Matrix
      • 输入噪声,用两个loss的梯度来迭代更新生成图像;Gram矩阵会扩大原本值的差异,突出风格和特点,但是Gram矩阵并非完美,会引起瑕疵。

    在这里插入图片描述

    基于直方图匹配的神经风格迁移:

    • Stable and Controllable Neural Texture Synthesis and Style Transfer Using Histogram Losses, 2017(使用直方图损失进行稳定可控的神经纹理合成和风格转换)

    在这里插入图片描述

    • Stable and Controllable Neural Texture Synthesis and Style Transfer Using Histogram Losses, 2017
      • 使用常规 histogram matching technique 来匹配源纹理图的直方图
      • 直方图匹配loss: O还是VGG输出特征,R为按风格S的直方图匹配操作

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    如果有兴趣了解更多相关内容,欢迎来我的个人网站看看:瞳孔空间

  • 相关阅读:
    集合划分,将集合S划分成k个子集合,每个子集合互不相交且不为空集,所有子集合加在一起是S
    数据结构与算法 | 数组(Array)
    凌恩客户文章:河流弯道对城市河流生态异质性的直接和间接影响
    使用 NestJs 进行错误处理
    抽象轻松的C语言
    SpringBoot配置多环境开发
    java面试题栈
    边缘计算AI智能安防监控视频平台车辆违停算法详解与应用
    Python正则表达式一文详解+实例代码展示
    ZGC的流程图
  • 原文地址:https://blog.csdn.net/tongkongyu/article/details/127434761