将图像从RGB色彩空间转换为HSV色彩空间

27

我在ScipyMatplotlib的文档中找不到这样的函数(即RGB_to_HSV()),Google除了ActiveState的配方展示了rgb2hsv函数之外,没有其他信息,但是该函数无法直接用于Numpy数组。

有人知道一种捷径吗?


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


3
回答自己的问题可能是更好的方法,而不是编辑答案。 - Jaime
1个回答

53

Matplotlib提供了RGB到HSV转换函数:matplotlib.colors.rgb_to_hsv():

matplotlib.colors.rgb_to_hsv(arr)

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


是的,需要等待2天才能够接受,但不会忘记的 ;) - theta
15
如果您将来需要,scikit-image 的 color module 提供了许多用于将颜色空间转换到另一种颜色空间的函数。 - gcalmettes
2
我尝试使用该函数,但没有得到任何色调。当我尝试使用pylab.plot(hsv_to_rgb(rgb_to_hsv(my_image_rgb_values)))时,我得到了一张黑白图片。这意味着它没有为我计算色调。 - change

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接