重新映射ImageMagick中表格的颜色

时间:2013-10-02 22:35:39

标签: php image-processing colors imagemagick

这是非常微不足道的,但我一直在努力弄明白......

我有一个rgb值表,我希望ImageMagick使用该表重新映射我的图像的颜色。

我在PHP中很容易实现了这个:

$table = array( 
  'red' => array(0,2,3,5,7...
  'green' => array(0,1,2,3,3...
  'blue' => array(50,50,5050...
);

然后我遍历宽度和高度并获得每个像素的颜色

for( $h = 0; $h<$height; $h++) {
  for( $w = 0; $w<$width; $w++ ) {
    $rgb = ImageColorAt($img, $w, $h);
    $r = ($rgb >> 16) & 0xFF;
    // Then I remap it
    $r = $table['red'][$r];

如何在命令行上使用ImageMagick执行此操作?任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

解决方案是基于数组创建一个查找表,然后让Imagemagick使用查找表-clut重新映射目标图像上的RGB值。

此处有更多信息:http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=24193&p=103407