文章目录
学习 线性平移不变系统 为接下来图片处理算法打好基础。
1. 什么是线性平移不变系统
两个特点:1. 线性的 2. 具有平移不变性
线性
如果满足下面这个function,你可以说这个function(公式)是线性的
平移不变性
- f(x) 是input, output是g(x)
- 当input向右平移a个单位,output也向右平移a个单位
- 满足这个条件,就是满足平移不变性
小总结:
- 同时满足线性和平移不变性的系统,就是线性平移不变性系统
线性平移不变性系统 – 在机器视觉中,哪里与我们相关,拿眼睛来举个例子
- 下图蓝色是 我们眼睛看到的 “场景”,
- f 是承接图像的视网膜的焦距位置,
- 当我们近视之后,我们眼球承接图像的位置会变到 g 的位置
- 这里面g 和 f 的关系可以用 线性平移不变性系统来描述
那么现在 - 如果你增加了“场景”的亮度,f, 和 g 所接收的亮度都会增强
- 如果你移动了“场景”的中的物体,f, 和 g 所接收的物体也会移动相同的距离
如果满足 线性 + 平移不变性 就可以说这满足线性平移不变系统(Linear Shift Invariance System)
接下来我们会用公式来证明,Linear Shift Invariance System == Convolution
2. Convolution (卷积)
卷积的概念,公式解释:线性平移不变性系统就是卷积运算
-
f(x) 与 h(x) 进行卷积,用积分来表示
-
在泛函分析中,卷积是通过两个函数 f 和 h 生成第三个函数的数学运算,表征函数 f 和经过翻转,平移的
h 的乘积函数围成的曲边梯形的面积。 -
接下来我们看一下如何从积分的角度解释 Linear Shift Invariance System == Convolution,即 线性平移不变性系统就是卷积运算
-
首先,你把h(-t),翻转,然后移动t个单位变成,h(x-t)
-
然后,与f(t)相乘
-
然后,我们做积分,得到x点的值g(x)
-
如果你想要得到所有的g(x), 在所有位置重复上面的步骤
-
这便是卷积了, 这个绿色的就是卷积了,g(x)
小总结:所有的线性平移不变性的计算 就是 卷积计算
- 这个方程是线性的,平移不变的
3. Example: 可视化卷积是如何工作的
Simple Case
Litter Difficult Case
Online 可视化 Demo
4. 为什么 卷积计算 进行的是 线性平移不变性的运算
数学解释: When you perform a convolution, the result is a function which satisfies linearity and shift invariance
卷积计算 是 线性计算
所以呢 卷积计算就是线性计算
卷积计算 是 平移不变的
g(x) = g(x - a)
5. 如何找到 h ?
让我们假设,given a system that is a linear shift-invariant system, you don’t know what it’s convolving the input with, It’s convolving it with some function h, How do you find h
-
这个是卷积的定义:
-
我们想解决上述问题,我们可以换个思路,我们用什么样的input,得到的结果是h(x)呢,Can we apply an input to this function, such that what comes out is h?
- 答案:如果我们输入一个单位脉冲函数,那么我们的输出就是h(x), It turns out that is the unit impulse function
- 下面的那个δ(x) 就是 单位脉冲函数, 非常窄,非常高, 这个区域的面积为1
input是一个单位脉冲,就得到了h(x), 你就知道这个线性平移不可变系统在做什么 了
6. 人眼的脉冲反应
我们知道晶状体(lenses)是一个线性平移不变性系统,
那么我们现在想知道 人眼的脉冲响应是什么样子的呢 What is the impulse response of the human eye?
- 下面这个δ(x, y)如果很宽的话,我们看东西就越来越模糊,不聚焦了(近视)
7. 卷积的特性
- 交换律
2D 卷积
医学影像3D