error_reporting(0);
include("functions.php");
$h1 = "DJ Mike's Image Maker 2";
$h2 = "Adaptive Blur";
##### Start blur
if ( $_GET[adaptiveBlur_radius] && $_GET[adaptiveBlur_sigma] )
{
$adaptiveBlur_radius = trim( $_GET[adaptiveBlur_radius] );
$adaptiveBlur_sigma = trim( $_GET[adaptiveBlur_sigma] );
##### Validate radius & sigma
if ( preg_match( "#[^0-9\-\.]#", "$adaptiveBlur_radius", $x) )
{
$_SESSION[error] = "Radius has numbers only";
exit;
}
if ( preg_match( "#[^0-9\-\.]#", "$adaptiveBlur_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->adaptiveBlurImage($adaptiveBlur_radius, $adaptiveBlur_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[adaptiveBlur_radius] = $adaptiveBlur_radius;
$_SESSION[adaptiveBlur_sigma] = $adaptiveBlur_sigma;
header("Location: display.php");
exit;
}
######### end adaptiveBlur
include("top.php");
?>
Adds an adaptive blur filter to image. The intensity of an adaptive blur depends is dramatically decreased at edge of the image, whereas a standard blur is uniform across the image.