【发布时间】:2011-08-05 21:25:07
【问题描述】:
我正在尝试在 php 中获取图像的 RGB 颜色的平均值。
通过 gd lib 我对其进行编程
$x = imagesx($im);
$y = imagesy($im);
for ($i = 0;$i < $x;$i++)
for ($j = 0;$j < $y;$j++){
$rgb = imagecolorat($im,$i,$j);
$sum['R'] += ($rgb >> 16) & 0xFF;
$sum['G'] += ($rgb >> 8) & 0xFF;
$sum['B'] += $rgb & 0xFF;
}
但我认为这不是一个好方法。它需要大量的内存来处理。还有其他方法吗?
【问题讨论】:
-
将图像大小调整为 1px x 1px 用于提供良好的平均值
-
@William:可能取决于所使用的缩放算法。 ;)
标签: php image-processing gd