I am adding a transparant logo as watermark over an image using PHP. However, in the result the logo has poor quality (the image that is under it is high quality, so it's just the watermark). This is the code I use (its about the last 3 lines):

```
header("Content-Type: image/png");

$photo = imagecreatefromjpeg('photos/'.$photo['image']);
$height = imagesx($photo);
$width = imagesx($photo);
if ($width > $_POST['width']) {
    $r = $width / $_POST['width'];

    $newwidth = $width / $r;
    $newheight = $height / $r;
}
$image = imagecreatetruecolor($width, $height);

$image2 = imagecopyresampled($image, $photo, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

$position = explode(" ", $_POST['background']);

$image3 = imagecrop($image, [
    'x' => str_replace(array('-', 'px'), array('', ''), $position[0]),
    'y' => str_replace(array('-', 'px'), array('', ''), $position[1]),
    'width' => $_POST['width'],
    'height' => $_POST['height']
]);
$stamp = imagecreatefrompng('img/logo.png');
imagecopyresized($image3, $stamp, 0, 0, 0, 0, 147, 50, imagesx($stamp), imagesy($stamp));
imagepng($image3, "created/".time().".png", 9);

```