色彩空间转换

在 0.9.6 版本加入.

红绿蓝图像

RGB图像表示为三维形状数组 (h,w,3) ,其中每个像素由三个值表示,红/绿/蓝。

例如,经典的Lena图像是 (512,512,3) 阵列::

import mahotas as mh
lena = mh.demos.load('lena')
print(lena.shape)

我们可以将其转换为灰度,就像使用 rgb2grey (或 rgb2gray 如果你愿意,两个都行)。该转换使用视觉逼真的方法(由于人眼对绿色通道更敏感,该方法对绿色通道的权重更大)。例如::

import mahotas as mh
lena = mh.demos.load('lena')
lenag = mh.colors.rgb2grey(lena)
from pylab import imshow
import mahotas as mh
lena = mh.demos.load('lena')
lenag = mh.colors.rgb2grey(lena)

imshow(lenag)

(Source code, png, hires.png, pdf)

_images/color-1.png

我们还可以通过以下方式转换为深褐色 rgb2sepia **

lenas = mh.colors.rgb2sepia(lena)
from pylab import imshow
import mahotas as mh
lena = mh.demos.load('lena')

lenas = mh.colors.rgb2sepia(lena)

imshow(lenas)

(Source code, png, hires.png, pdf)

_images/color-2.png

其他色彩空间

Mahotas还可以转换为 XYZ space 以及对 Lab space 使用 rgb2xyzrgb2lab ,分别为。