Skip to content

Lec03 | Image Processing#

Note

该部分笔记不是很完整。

Image processing basics#

Increasing Contrast#

20240926105453.png

  • 模糊,锐化,边缘提取

convolution#

\[ (f*g)(x)=\int_{-\infty}^{\infty}f(y)g(x-y)dy \]

Discrete 2D convolution#

$$ (f*g)(x,y)=\sum_{i,j=-\infty}^{\infty}f(i,j)I(x-i,y-j) $$

Padding#

如果没有padding的话,那么我们经过卷积操作之后得到的图像size会变小,为了得到大小相同的图像,我们选择在图像周围进行padding。

Guassian blur#

  • Obtain filter coefficients by sampling 2D Gaussian function \(f(i,j)=\frac{1}{2\pi\sigma^2}e^{-\frac{i^2+j^2}{2\sigma^2}}\)

Sharpening#

锐化操作就是往图像里添加高频信息

  • Let \(I\) be the original image
  • High frequencies in image \(I=I-blur(I)\)
  • Sharpened image = \(I+(I-blur(I))\)

Bilateral filter#

removing noise while preserving image edges

Image sampling#

采样就是给定一个连续的函数,在不同的点求它的值,也可以认为,采样是把一个连续的函数离散化的过程。

20240810123341.png

Image resizing: change image size/resolution.

Reducing image size -> down-sampling

但是我们在采样时有可能发生反走样/锯齿现象:

alias 20240810123003.png

原因可能是:

  • 像素本身有一定大小
  • 采样的速度跟不上信号变化的速度(高频信号采样不足)

Fourier Transform#

傅里叶变换可以将信号分解为频率,并且能将满足一定条件的某个函数表示成三角函数(正弦和/或余弦函数)或者它们的积分的线性组合。

20240810122628.png 20240810122701.png

We can also use Fourier Transform to analyze the frequency content of an image and fix the aliasing problem. 20240810124833.png

20240810123102.png

20240810125139.png

Image magnification#

这里主要介绍插值的各种技巧;个人认为如果你熟练使用matplotlib的话,这部分内容应该不会有太大的困难。

Interpolation#

Nearest-neighbor interpolation#

  • Not continuous
  • Not smooth(光滑函数:几阶导连续就称该函数几阶光滑)

Linear interpolation#

Cubic interpolation#

For each interval: 并不是对整体进行拟合,而是每两点首先拟合线性函数,非线性项的引入是为了使曲线光滑

Bilinear Interpolation#

20240817221438.png

Super resolution#

超分辨率技术,现在几乎都是基于深度学习的方法


Last update: 2024年11月9日 17:03:32
Created: 2024年8月11日 11:55:40