【问题标题】:scikit-learn denoising example in pythonpython中的scikit-learn去噪示例
【发布时间】: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)

【问题讨论】:

    标签: python scikit-learn


    【解决方案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)
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-09
      • 2012-12-08
      • 2015-08-25
      • 2019-01-25
      • 2018-06-27
      • 1970-01-01
      • 2012-06-29
      • 2015-06-26
      相关资源
      最近更新 更多