To convert a baseline JPEG to a progressive JPEG in a lossless manner you can use jpegtran
:
jpegtran works by rearranging the compressed data (DCT coefficients), without ever fully decoding the image. Therefore, its transformations are lossless: there is no image degradation at all
It has a -progressive
option that creates a progressive JPEG file, e.g.:
jpegtran -progressive foo.jpg > fooprog.jpg
If you search the web for “install jpegtran (your OS here)” you will find various resources explaining how you can obtain jpegtran
.