function generate_graph($params) { $in = generate_grayscale(); $out = imageclone($in); imagecolorcorrect($out, $params); $graph = imagecreate(256, 256); imagecolorallocate($graph, 255, 255, 255); $z = imagecolorallocate($graph, 0, 0, 0); for ($i = 0; $i < 256; $i++) { $x = 255 & imagecolorat($in, $i, 0); $y = 255 & imagecolorat($out, $i, 0); imagesetpixel($graph, $x, 255 - $y, $z); } return $graph; }
<?php include dirname(__FILE__) . '/_init.php'; $im = imagecreatefromjpeg('images/mosaic.jpg'); imagecolorcorrect($im, array('s' => array('gamma' => 0.7)), IMAGE_EX_COLORSPACE_HSV); imagejpeg($im, 'output/gamma-s1.jpg'); $im = imagecreatefromjpeg('images/mosaic.jpg'); imagecolorcorrect($im, array('s' => array('gamma' => 1.4)), IMAGE_EX_COLORSPACE_HSV); imagejpeg($im, 'output/gamma-s2.jpg');
<?php include dirname(__FILE__) . '/_init.php'; $im = imagecreatefromjpeg('images/mosaic.jpg'); imagecolorcorrect($im, array('s' => array('tonecurve' => array(array(0.5, 0.75)))), IMAGE_EX_COLORSPACE_HSV); imagejpeg($im, 'output/tonecurve-s1.jpg'); $im = imagecreatefromjpeg('images/mosaic.jpg'); imagecolorcorrect($im, array('s' => array('tonecurve2' => array(array(0.3, 0.2), array(0.5, 0.4), array(0.7, 0.8)))), IMAGE_EX_COLORSPACE_HSV); imagejpeg($im, 'output/tonecurve-s2.jpg');
<?php include dirname(__FILE__) . '/_init.php'; $im = imagecreatefromjpeg('images/mosaic.jpg'); imagecolorcorrect($im, array('s' => array('levels' => array(51, 204))), IMAGE_EX_COLORSPACE_HSV); imagejpeg($im, 'output/levels-s1.jpg'); $im = imagecreatefromjpeg('images/mosaic.jpg'); imagecolorcorrect($im, array('s' => array('levels' => array(0, 255, 51, 204))), IMAGE_EX_COLORSPACE_HSV); imagejpeg($im, 'output/levels-s2.jpg');