No entiendo bien el objetivo, pero como ajax maneja texto, vas a tener que convertir la imagen, por ejemplo a base64
Código PHP:
Ver original<!DOCTYPE html>
<html lang="es-ar">
<head>
<meta charset="utf-8" />
<title>Html5</title>
</head>
<body>
<div>
<?php
$img = "<img src='data:image/jpg;base64,$base64' alt='gato' title='gato' />";
echo $img;
?>
<br />
<img src="data:image/jpg;base64,<?php echo $base64; ?>" alt="gato2" title="gato2" />
</div>
<script>
var img = new Image();
img.src = 'data:image/jpg;base64,<?php echo $base64; ?>';
img.title = "gato3";
img.alt = "gato3";
document.body.appendChild( img );
</script>
</body>
</html>
Si la insertás en la bd, la tenés que poner en un campo blob, y la mostras con php recuperando el campo y pasando los headers correspondientes al mimeType de la imagen
Lo que ajax carga asincrónicamente son los datos que recibe, en definitiva una cadena de texto
SAludos