计算机视觉基础~图像预处理(上)

图像预处理

内容提要:

  • 图像显示与存储原理
  • 图像增强的目标
  • 点运算:基于直方图的对比度增强
  •  形态学处理
  • 空间域处理:卷积
  • 卷积的应用(平滑、边缘检测、锐化等)
  • 频率域处理:傅里叶变换、小波变换
  • 应用案例:平滑、边缘检测、CLAHE等

1.图像的显示与储存原理

(1)颜色空间

RGB:越叠加越亮

计算机视觉基础~图像预处理(上)_第1张图片计算机视觉基础~图像预处理(上)_第2张图片

CMYK:Cyan(青),Magenta(品红),Yellow,Key

计算机视觉基础~图像预处理(上)_第3张图片计算机视觉基础~图像预处理(上)_第4张图片

HSV:Hue(色调,颜色种类),Saturation(饱和度,色彩的纯度),Value(明度,色彩的明亮度)

计算机视觉基础~图像预处理(上)_第5张图片计算机视觉基础~图像预处理(上)_第6张图片

(2)颜色存储原理

计算机视觉基础~图像预处理(上)_第7张图片

 Gray = R*0.3 + G*0.59 + B*0.11(典型的比例分配)

计算机视觉基础~图像预处理(上)_第8张图片

 常见的存储的格式有:bmp, jpg, png, tiff, gif, pcx, tga, exif, fpx, svg, psd, cdr, pcd, dxf, ufo, eps, ai, raw, WMF, webp等 

  • BMP:采用位映射存储格式,不采用其他任何 压缩,所占用的空间很大。
  • JPG:最常见的有损压缩格式,能够将图像压缩 到很小的空间,压缩比可达10:1到40:1之间。
  •  GIF:基于LZW算法的连续色调的无损压缩格式 ,其压缩率一般在50%左右。
  • PNG:是比较新的图像文件格式,能够提供长 度比GIF小30%的无损压缩图像文件

2.图像增强的目标

改善图像的视觉效果;
 

转换为更适合于人或机器分析处理的形式; 


突出对人或机器分析有意义的信息; 

抑制无用信息,提高图像的使用价值

常见操作有:平滑、锐化、去噪、对比度增强(灰度调整)

图像处理方法:

计算机视觉基础~图像预处理(上)_第9张图片

3.点运算:直方图均衡化(HE)

直方图均衡化: 实质上是对图像 进行非线性拉伸 

重新分配各个灰 度单位中的像素 点数量,使一定 灰度范围像素点 数量的值大致相 等。

直方图均衡的经典算法对整幅图像的像素使用相同的变换,如果图像中包括明显亮的或 者暗的区域,则经典算法作用有限。 
计算机视觉基础~图像预处理(上)_第10张图片

自适应直方图均衡化 (AHE)

  • 移动模板在原始图片上按特定步长滑动; 
  • 每次移动后,模板区域内做直方图均衡,映射 后的结果赋值给模板区域内所有点
  • 每个点会有多次赋值,最终的取值为这些赋值 的均值。

限制对比度自适应直方图均衡(CLAHE) 

AHE会过度放大图像中相对均匀区域的噪音,与普通的自适应直方图均衡相比,CLAHE的不 同地方在于直方图修剪过程,用修剪后的直方图 均衡图像时,图像对比度会更自然。

计算机视觉基础~图像预处理(上)_第11张图片

  • 小黑点的灰度直接由映射函数计算得到;
  • 粉色区域内点的灰度由映射函数计算而得; 
  • 绿色区域内点的灰度由相邻2块灰度映射值线性 插值而得; 
  • 其他区域所有点的灰度由相邻4块的灰度映射值双 线性插值而得 

计算机视觉基础~图像预处理(上)_第12张图片

CLAHE算法步骤  

1.图像分块,以块为单位;  

2.先计算直方图,然后修剪直方图,最后均衡;

3.遍历操作各个图像块,进行块间双线性插值; 

4.与原图做图层滤色混合操作。(可选)

计算机视觉基础~图像预处理(上)_第13张图片

4.形态学处理 

膨胀是图像中的高亮部分进行膨胀,类似于 领域扩张。 

腐蚀是原图的高亮部分被腐蚀,类似于领域 被蚕食。

计算机视觉基础~图像预处理(上)_第14张图片

开运算:先腐蚀再膨胀,可以去掉目标外的孤立点 

闭运算:先膨胀再腐蚀,可以去掉目标内的孔

通常,当有噪声的图像用阈值二值化后,所 得到的边界是很不平滑的,物体区域具有一 些错判的孔洞,背景区域散布着一些小的噪 声物体,连续的开和闭运算可以显著的改善 这种情况。

5.空间域处理及其变换
 

首先明确几个相同表达意思的黑话

卷积=滤波

卷积核 = 卷积模板 = 扫描窗 = 滤波核 = 滤波模板

计算机视觉基础~图像预处理(上)_第15张图片

• 参数解释

• x, y是像素在图片中的位置/坐标

• k, l是卷积核中的位置/坐标 ,中心点的坐标是(0,0)

• f[k, l]是卷积核中在(k, l)上的权重参数

• I[x+k, y+l]是与f[k, l]相对应的图片像素值

• h[x, y]是图片中(x, y)像素的滤波/卷积结果
 计算机视觉基础~图像预处理(上)_第16张图片

计算机视觉基础~图像预处理(上)_第17张图片

不同功能需要定义不同函数:

  • 平滑/去噪
  • 梯度/锐化
  • 边缘、显著点、纹理 
  • 模式检测

边界填充策略

  • 补零(zero-padding) 
  • 边界复制(replication) 
  • 镜像(reflection) 
  • 块复制(wraparound)

计算机视觉基础~图像预处理(上)_第18张图片

计算机视觉基础~图像预处理(上)_第19张图片

 平滑均值滤波/卷积 

特征:3*3,扫描步长:1,边框补0

计算机视觉基础~图像预处理(上)_第20张图片

均值滤波本身存在缺陷,既没有 很好地去除噪声点,也破坏了图 像的细节反而使图像变得模糊

特点: 奇数尺寸 • 3x3,5x5,7x7,2n-1 x 2n-1

• 参数和为:1

import cv2 as cv
import  numpy as np
# 均值模糊
def blur_demo(img):
    dst = cv.blur(img, (5, 5))
    cv.imshow("blur image", dst)

计算机视觉基础~图像预处理(上)_第21张图片
 

平滑中值滤波/卷积  

• 奇数尺寸

          • 3x3,5x5,7x7,2n-1 x 2n-1

• 操作原理

         • 卷积域内的像素值从小到大排序

         • 取中间值作为卷积输出

• 有效去除椒盐噪声

计算机视觉基础~图像预处理(上)_第22张图片

将领域矩阵中的N个像素 进行排序,并将这个矩阵 的中心点赋值为这N个像 素的中值。

import cv2 as cv
import  numpy as np
# 中值模糊
def median_blur_demo(img):
    dst = cv.medianBlur(img, 5)
    cv.imshow("median_blur_demo", dst)

 计算机视觉基础~图像预处理(上)_第23张图片

平滑高斯滤波/卷积  

• 奇数尺寸

    • 3x3,5x5,7x7,2n-1 x 2n-1

• 模拟人眼,关注中心区域

• 有效去除高斯噪声

• 参数

    • x, y是卷积参数坐标

    • 标准差 \sigma

                                                                           \large G_{\sigma }= \frac{1}{2\pi \sigma ^{2}}e^{-\frac{x^{2}+y^{2}}{2\sigma ^{2}}}

计算机视觉基础~图像预处理(上)_第24张图片计算机视觉基础~图像预处理(上)_第25张图片

计算机视觉基础~图像预处理(上)_第26张图片

计算机视觉基础~图像预处理(上)_第27张图片

\sigma越小,关注区域越集中

 分解特性(级联高斯) 

2D卷积拆分成两个相同的1D卷积

• 列卷积

• 行卷积

降计算

• 2D卷积:KxK次计算

• 2x1D卷积:2K次计算

计算机视觉基础~图像预处理(上)_第28张图片

计算机视觉基础~图像预处理(上)_第29张图片

 

你可能感兴趣的:(Computer,Vision)