error_reporting(0);
include("functions.php");
$h1 = "DJ Mike's Image Maker 2";
$h2 = "Gaussian Blur";
##### Start blur
if ( $_GET[gaussianblur_radius] && $_GET[gaussianblur_sigma] )
{
$gaussianblur_radius = trim( $_GET[gaussianblur_radius] );
$gaussianblur_sigma = trim( $_GET[gaussianblur_sigma] );
##### Validate radius & sigma
if ( preg_match( "#[^0-9\-\.]#", "$gaussianblur_radius", $x) )
{
$_SESSION[error] = "Radius has numbers only";
exit;
}
if ( preg_match( "#[^0-9\-\.]#", "$gaussianblur_sigma", $x) )
{
$_SESSION[error] .= "
Sigma has numbers only";
exit;
}
if ( $_SESSION[error] ) { header("location:$self"); }
#############
$image = new Imagick($_SESSION[path]);
foreach ($image as $frame)
{ $frame->blurImage($gaussianblur_radius, $gaussianblur_sigma ); }
$format = strtolower( $image->getimageformat() );
$path = "temp/$ID.$_SESSION[views].$format";
$frames = $image->getNumberImages();
if ( $frames > 1) { $image->writeImages("$path", TRUE); }
else { $image->writeImage("$path"); }
# save settings
$_SESSION[path] = $path;
$_SESSION[gaussianblur_radius] = $gaussianblur_radius;
$_SESSION[gaussianblur_sigma] = $gaussianblur_sigma;
header("Location: display.php");
exit;
}
######### end blur
include("top.php");
?>
Blurs an image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, the radius should be larger than sigma. Use a radius of 0 and selects a suitable radius for you.