【问题标题】:Converting image from RGB to HSV color space将图像从 RGB 转换为 HSV 颜色空间
【发布时间】:2013-03-07 17:55:16
【问题描述】:

我在ScipyMatplotlib's 文档中找不到这样的函数(即RGB_to_HSV()),Google 不显示指针,除了演示rgb2hsv 函数的ActiveState 配方,虽然不能用于Numpy 数组原样。

有人知道捷径吗?


编辑:抱歉,刚刚找到matplotlib.colors.rgb_to_hsv(),这正是我要找的。我应该删除这个问题吗?

【问题讨论】:

  • 回答你自己的问题可能是要走的路,而不是编辑答案。

标签: numpy matplotlib scipy python-imaging-library


【解决方案1】:

Matplotlib 提供 RGB 到 HSV 的转换功能:matplotlib.colors.rgb_to_hsv():

matplotlib.colors.rgb_to_hsv(arr)

将 numpy 数组中的 rgb 值转换为 hsv 值,输入和输出数组的形状应为 (M,N,3)

【讨论】:

  • 是的,需要等待2天才能接受,但不会忘记;)
  • 如果您将来需要它,scikit-image 的color module 提供了很多从颜色空间转换到另一个颜色空间的功能。
  • 我尝试使用该功能并没有得到任何色调。在尝试 pylab.plot(hsv_to_rgb(rgb_to_hsv(my_image_rgb_values))) 时,我得到了一张黑白图像。这意味着它没有为我计算色调。