【问题标题】:grayscale gradient with skimage or numpy带有 skimage 或 numpy 的灰度渐变
【发布时间】:2014-10-03 04:57:35
【问题描述】:

我必须创建一个线性灰度渐变,顶部有黑色阴影,底部有白色阴影。我必须使用 skimage 和 numpy。

我在 scikit 上找到了水平方向而不是垂直方向的颜色线性渐变的代码:http://scikit-image.org/docs/dev/auto_examples/plot_tinting_grayscale_images.html

我想要对这段代码的解释以及一些关于如何将所有内容置于灰度和垂直而不是彩色和水平的提示。谢谢!

【问题讨论】:

    标签: image-processing numpy scikit-image


    【解决方案1】:

    灰度图像可以表示为二维矩阵。假设我们想要创建一个 100x100 的渐变图像。首先,我们使用np.linspace 来构造梯度值,100 个介于 0 和 1 之间的值。然后我们在垂直方向上重复这个向量 100 次(使用np.tile)来形成梯度图像。在这个阶段,图像是从左到右的渐变,所以我们使用转置将其翻转为上下方向。

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.linspace(0, 1, 100)
    image = np.tile(x, (100, 1)).T
    
    plt.imshow(image, cmap='gray')
    plt.show()
    

    【讨论】:

    • 谢谢,这正是我想要的。
    猜你喜欢
    • 1970-01-01
    • 2018-04-17
    • 2014-08-08
    • 2020-03-07
    • 2016-04-22
    • 2017-11-17
    • 1970-01-01
    • 2014-02-15
    • 2018-09-24
    相关资源
    最近更新 更多