繁体   English   中英

在python中使用魔杖打印图像的RGB值

[英]print RGB values of image using wand in python

我已将图像大小调整为“ 1x1”,以便使用python中的魔杖库获得平均颜色,但现在我想打印该调整大小的“ 1x1”图像的“ RGB”值。 我是魔杖的新手,所以任何指导或帮助都将不胜感激。这是我到目前为止编写的代码。

with Image(filename='E:/Miro/images/test.jpg') as image:
with image.clone() as img:
    img.resize(1,1)

我只是想知道魔杖库中是否有一个函数可以访问图像的“ RGB”值。

我认为resize 1x1不是获取图像平均颜色的好方法。 我不知道wand是什么。 但是,如果您已将图像读入numpy.ndarray ,则可以这样获得avg:

#!/usr/bin/python3
# 2018.10.02 19:07:21 CST

import cv2

def getAvg(img):
    nh,nw = img.shape[:2]
    nc = 1 if img.ndim==2 else img.shape[2]
    avg = img.reshape(-1, nc).sum(axis=0)/(nw*nh)
    return avg

img = cv2.imread("doll.jpg")
avg = getAvg(img)
print("Avg: {}".format(avg))

# Avg: [148.661125 146.273425 155.205675]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM