The short answer is no. A JPEG image uses compression, which means that each output byte depends on all the others. If you change the number of image bytes, then you must decompress and recompress.
There will be a loss of quality as a result of the recompression, since JPEG uses lossy compression, but you are losing quality anyway by quartering the resolution. You can get the best possible quality from the low-resolution image by increasing the JPEG quality level when recompressing, though this will of course increase the file size.
If you do a lot of work with images, it is best to work in a lossless compression format, such as PNG, converting to JPEG only when images are finalised, provided of course that you have the extra disc space.
Is there a codec that constructs the image that grows on just by appending further data to the image? – Necktwi – 2014-07-03T14:41:22.560
what about the progressive jpeg? Doesn't it does exactly what i'm asking? – Necktwi – 2014-07-03T15:44:57.903
No, that does something slightly different by increasing the quality of the image (from low to full), but the resolution is always unchanged (reference). However, there is another JPEG extension called "hierarchical mode", which encodes different resolutions (see also here). But again, libjpeg-turbo doesn't support it (see here, search for "progressive" in the text).
– jmiserez – 2014-07-03T17:54:21.9571
And to answer the first comment, of course there are such codecs. Just not JPG. What you are looking for is called an image pyramid, or multiscale representation. E.g. JPEG2000 uses a wavelet transform that creates a wavelet pyramid. There are other pyramids, such as Gaussian or Laplacian pyramids. This slideset gives a good overview on how things work, while JPEG2000 is discussed here and here.
– jmiserez – 2014-07-03T18:10:49.353Thanks for the information about the new JPEG formats. I don't expect many source images (cameras, scanners, etc) to use them yet. – AFH – 2014-07-14T11:01:50.420