如何使用JMagick(imagemagick的包装器)获取RGB值?
如果您想在命令行上获得特定图像的"红色"值,可以使用以下语法。对于JMagick API,只需查找如何将其转换为API调用:
identify -format "%[fx:s.p{111,111}.r]" input.jpg
0.427451
fx:
是ImageMagick的特效图像操作符,它允许您从图像中查询各种属性,在数学表达式中使用它们,并将它们应用于图像;s.
告诉ImageMagick在应用fx操作的序列中选择当前图像;p{111,111}.
告诉fx使用第111列第111行的像素进行此操作(如果跳过像素坐标,则fx默认为p{0,0}
,即左上角的像素;r
查询所选像素的红色通道;0.427451
是结果:意味着它是通道最大值的42.7451%(8位为255,16位为65535)。
identify -format "%[fx:s.p{111,111}.z]" input.jpg
8
- CCD_ 7查询用于像素的通道深度。结果为8
您还可以在将图像转换为HSL颜色系统后查询像素的色调、饱和度和亮度值:
identify -colorspace hsl -format "%[fx:s.p{111,111}.hue]" input.jpg
0.538012
identify -colorspace hsl -format "%[fx:s.p{111,111}.saturation]" input.jpg
0.53271
identify -colorspace hsl -format "%[fx:s.p{111,111}.lightness]" input.jpg
0.790196