2

我想知道是否可以用wand计算平均 rgb 值?

我知道如何用 PIL 来做,但是在 wand 的文档中我真的找不到如何获取图像数据。

我唯一能找到的是:

for row in image:
    for col in row:
        assert isinstance(col, wand.color.Color)
        print(col)

但是 thencol是一个Color对象,我不确定如何从那里提取值。

有任何想法吗?

4

1 回答 1

1

您似乎已经用您提供的信息回答了这个问题:D

如果col是一个Color对象,那么就像从子节点中提取信息一样简单,如下所示:

col.red

这是我的完整代码(使用 Python 2)。我从来没有用过魔杖,但这绝对很棒!

from wand.image import Image
from wand.display import display
from wand.color import Color

with Image(filename='mona-lisa.png') as image:
    for row in image:
        for col in row:
            assert isinstance(col, Color)
            print str(col) + "R:"+str(col.red)+"|"+"G:"+str(col.green)+"|"+"B:"+str(col.blue)

所以,如果你想要平均值,你可以将红色的平均值、绿色的平均值或全部平均值。

更多关于 Color 对象的节点/模块的信息可以在这里找到:

颜色对象的魔杖文档

于 2016-04-09T00:00:30.070 回答