Solo por curiosidad, en tu código introduce la siguiente linea:
Código Delphi
[-]
Stream := TMemoryStream.Create;
TBlobField(query1.FieldByName('FOTO_IMAGEN')).SaveToStream(Stream);
Stream.SaveToFile('c:\1.jpg');
if Stream.Size > 0 then begin
Stream.Position := 0;
Así la imagen se guardara en el disco duro. Ahora abre la imagen con otro programa y comprueba que esta bien.