python中的scikit-learn去噪示例

Posted

技术标签:

【中文标题】python中的scikit-learn去噪示例【英文标题】:scikit-learn denoising example in python 【发布时间】:2017-07-16 03:10:47 【问题描述】:

我刚刚看到this 示例以不同的方式编写代码以使用 CSR(集中式稀疏表示)进行去噪。但在那个例子中,我只有几行,我不知道他们为什么使用这些行 =>

行在下面=>

1)

face = face[::2, ::2] + face[1::2, ::2] + face[::2, 1::2] + face[1::2, 1::2]
face /= 4.0

2)

data -= np.mean(data, axis=0)
data /= np.std(data, axis=0)

【问题讨论】:

【参考方案1】:

第一个是extended slicing,第二个是standardization

说明:

1.

face = face[::2, ::2] + face[1::2, ::2] + face[::2, 1::2] + face[1::2, 1::2]
face /= 4.0

只是downsampling the image by bilinear interpolation (that is reducing its resolution).

在给定的示例中,face 的原始尺寸为[768,1024]。上面两行有效地找到每个 2x2 像素的平均值并将其放在单个像素中。见下图。

蓝色的是图像的原始像素,红色的是周围像素的平均结果。将此想法扩展到整个图像,您将获得face = [384, 512] 的新降低分辨率。

这样做是为了让计算变得更快。因为较大的图像将需要更多的时间处理。

2.

data -= np.mean(data, axis=0)
data /= np.std(data, axis=0)

这是机器学习算法中的一种常用技术,用于围绕零均值和单位方差缩放和集中数据。您可以参考许多资源来了解有关标准化的更多信息。以下是一些:

http://scikit-learn.org/stable/modules/preprocessing.html#standardization-or-mean-removal-and-variance-scaling http://sebastianraschka.com/Articles/2014_about_feature_scaling.html https://stats.stackexchange.com/questions/152078/what-are-the-real-benefits-of-normalization-scaling-values-between-0-and-1-in Why feature scaling? https://www.coursera.org/learn/machine-learning/lecture/xx3Da/gradient-descent-in-practice-i-feature-scaling

【讨论】:

以上是关于python中的scikit-learn去噪示例的主要内容,如果未能解决你的问题,请参考以下文章

Python,OpenCV中的非局部均值去噪(Non-Local Means Denoising)

在 python 中使用 BernoulliNB(朴素贝叶斯分类器)scikit-learn 的简单示例 - 无法解释分类

Python Scikit-learn 感知器输出概率

简单示例中的不良逻辑回归 [scikit-learn]

如何修改scikit-learn的eigenface人脸识别示例

请教小波去噪中wdencmp函数使用的问题