一、图像复原
正问题(Forward Problem):从清晰图片到模糊图片
模糊算子(矩阵)X 清晰图片 + 噪声 = 模糊图片
- 矩阵A是模糊算子,表示模糊化这个物理过程,是已知的;
- x是清晰(复原)图像,是未知的;
- e是观测过程中的噪声,是未知的;
- b是观测到的模糊图像,是已知的。
反问题(Inverse Problem):从模糊图片到清晰图片
任务:观测到的图像是模糊,带有噪声的,如何尽可能复原出清晰的图像?
数学模型:不适定反问题
矩阵A是模糊算子,x是未知清晰复原图像,b是观测到的模糊图像
不适定反问题(III-Posed Inverse Problem)
任务:观测到的图像是模糊,带有噪声的,如何尽可能复原出清晰的图像?
数学模型:不适定反问题
直接求解:高斯消去法,矩阵分解法,迭代法等。
不适定性:(Hardmard)
- 解不一定存在最小二乘问题(数据拟合)
- 解不一定唯一最小范数(能量)解
- 解对于观测数据敏感正则化技巧
最小二乘问题:算子A奇异,条件数巨大,系统不相容等困难
模糊类型(矩阵A的类型):
- Motion blur: 运动模糊
- Out-of-focus: 无法聚焦模糊
噪声类型(向量e的类型):
- Gaussian noise: 正态(高斯)噪声,最为常用
- Poisson noise: 泊松噪声
- Salt and pepper noise: 盐胡椒噪声
图像复原反问题:求解如下模型的清晰图片x
其中模糊矩阵A和模糊图片b已知,噪声e未知,但噪声的值很小。既然噪声e很小(),能否通过求解
,
得到的数值解x,作为清晰图片的近似?即计算
直除得到的结果模糊,不行
解决方法一:去掉模糊矩阵A中的小奇异值
- 解决方法一的难点:究竟应该选择保留多少个大奇异值?即k的值如何选取。
- 如果k太小,复原的图像不够清晰,细节没有体现出来。即出现欠拟合情形(under-fitting)。
- 如果k太大,复原的图像被噪声污染,变得不清晰。即出现过拟合情形(over-fitting)。
- 通过选择不同k,观察复原的图像清晰度,来粗略判断合适的k的选取。
解决方法二:Tikhonov正则化
Tikhonov正则化被广泛的应用于统计学,机器学习和深度学习,信号处理等领域。
对复原的解x有先验(prior)的物理假设,光滑性,稀疏性等等。不直接求解Ax=b,而是求解
其中:
- 称为拟合项,衡量数据和模型的逼近程度;
- 称为Tikhonov正则化项,避免过度拟合;
- >0是正则化参数,平衡拟合项和正则化项。
解决方法二的难点:如何选择合适的正则化参数u?
- 如果u太小,复原的图像被噪声污染,变得不清晰。即出现过拟合情形(over-fitting)。极端情形u=0,则问题变回求解Ax=b。
- 如果u太大,复原图像不够清晰,细节没有体现出来。即出现钱拟合情形(under-fitting)。极端情形u=∞,则问题和Ax=b无关。
- 通过选择不同u,观察复原的图像清晰程度,来粗略判断合适的u的选取。
解决方法三:迭代法
数值迭代方法在很多科学计算领域有着广泛的应用,如机器学习,深度学习,数值代数,最优化等等。
迭代方法可以用来求解线性方程组
也可以用于求解最小二乘问题,或其他一般目标函数最优化问题
迭代法一般形式,产生迭代序列,最后收敛到解
常见的定常迭代方法:
- Jacobi迭代,Gauss-Seidel迭代,SOR迭代等;
常见非定常迭代法
- 梯度下降法(gradient descent)
- 随机梯度下降法(stochastic gradient descent)
- 共轭梯度法(conjugate gradient)
- Kaczmarz方法,Cimmino方法
图像复原模型与算法总结
图像去模糊(复原)在数学上是一个不适定反问题,难度在于模糊矩阵接近奇异,且观测信号被噪声污染。
- 直接求解线性方程组,如左除,无法得到清晰的图像。
- 必须采用正则化方法,如截取奇异值分解法。
- Tikhonov正则化方法。
- 迭代方法。
- 不同方法有各自的优缺点。
图像去背景(Background Removal)
- 一段视频(一系列图像)中,如何分别提取出背景(固定)部分和非背景(移动)部分?
- 如何去除一张照片中无关的行人部分?