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 的简单示例 - 无法解释分类