It's not as accurate as you'd like it to be. Some issues are:
- It's quite lossy.
- It'll do better on images containing common objects vs rare or even novel objects.
- You won't know how much the result deviates from the original if all you're given is the prompt/conditioning vector and what model to use it on.
- You cannot easily "compress" new images, instead you would have to either finetune the model (at which point you'd also mess with everyone else's decompression) or do an adversarial attack onto the model with another model to find the prompt/conditioning vector most likely to create something as close as possible to the original image you have.
- It's rather slow.
Also it's not all that novel. People have been doing this with (variational) autoencoders (another class of generative model). This also doesn't have the flaw that you have no easy way to compress new images since an autoencoder is a trained encoder/decoder pair. It's also quite a bit faster than diffusion models when it comes to decoding, but often with a greater decrease in quality.
Most widespread diffusion models even use an autoencoder adjacent architecture to "compress" the input. The actual diffusion model then works in that "compressed data space" called latent space. The generated images are then decompressed before shown to users. Last time I checked, iirc, that compression rate was at around 1/4 to 1/8, but it's been a while, so don't quote me on this number.
edit: fixed some ambiguous wordings.
Yeah, I've noticed that too—there's a distinct 'AI vibe' that comes through in the generated responses, even if it's subtle.