Image 使用cli查找所有像素的平均值
是否有一种cli方法可以获取图像中所有像素的平均值 例如,如果我有一个全黑的图像,我想键入: *cmd* black-img.jpg *cmd*black-img.jpg 在shell中,输出将是Image 使用cli查找所有像素的平均值,image,imagemagick,Image,Imagemagick,是否有一种cli方法可以获取图像中所有像素的平均值 例如,如果我有一个全黑的图像,我想键入: *cmd* black-img.jpg *cmd*black-img.jpg 在shell中,输出将是0,哦,这很简单: convert image.jpg -scale 1x1\! txt:- 该命令使用ImageMagick的convert强制将输入图像缩放到1x1像素的大小。8位RGBA图像的输出如下: # ImageMagick pixel enumeration: 1,1,255,sr
0
,哦,这很简单:
convert image.jpg -scale 1x1\! txt:-
该命令使用ImageMagick的convert
强制将输入图像缩放到1x1像素的大小。8位RGBA图像的输出如下:
# ImageMagick pixel enumeration: 1,1,255,srgba
0,0: (151,161,212, 92) #97A1D45C srgba(151,161,212,0.361928)
或者,对于8位sRGB映像:
# ImageMagick pixel enumeration: 1,1,255,srgb
0,0: (229,226,229) #E5E2E5 srgb(229,226,229)
它表示生成的单像素图像的颜色值:
是此像素的坐标:第一列中的第一行0,0:
表示RGBA像素的Red、Green、Blue和Alpha值(151161212,92)
表示sRGB像素的Red、Green和Blue值(2292266229)
和#97A1D45C
是各自的十六进制值#E5E2E5
现在,如果是黑色像素,您自己的工作就是将此输出计算到shell中的“a
'0'
”。:-) 好的,所以当原始海报询问“获取图像中所有像素的平均值”时,他似乎不想要3或4个颜色通道值。。。他想要一个单独的值,可以先将图像转换为灰度:
convert image.jpg -colorspace gray -scale 1x1\! txt:-
与另一个答案相同的8位RGBA(带Alpha通道)图像的样本输出:
# ImageMagick pixel enumeration: 1,1,255,graya
0,0: (119,119,119, 92) #7777775C graya(119,119,119,0.361928)
以前的8位sRGB图像(无Alpha通道)的输出:
# ImageMagick pixel enumeration: 1,1,255,gray
0,0: (221,221,221) #DDDDDD gray(221,221,221)
那太好了!你能不能先把它变成灰度,这样你就不必对它们求平均值了?