I assumed that a jpeg image (or even a bmp image) consists of something like this
maybe a bit length (1-255) followed by a 24bit colour value - so the image consists sequences of bits of a given colour, although I can see that this would tend to a massive image size for images consisting of no image at all - just random pixels.
Anyway - assuming a jpeg holds something of this nature, then you could adjust the colours by xoring the colour bits with some "known" value, which, as I say, would have the sole effect of changing the colour of each pixel block.
Now to recover the original image, you would repeat the process, since a xor b xor b = a again. So if someone had the original jpeg, they can recover the changes (and hence the message) by doing a similar bit wise process comparing the new image with the original.
And an observer would just see a normal jpeg, with strange colours.
That's what would make sense to me. Now does it make sense with this algorithm?
----
now I've read the linked article above, and it is something like this, I think.
changing the least significant bit of any colour (the R, G or B component) gives a tiny variation of colour, but hardly detectable visually, (so not strange, as I had assumed) although apparently, if you know it is there then maybe relatively easily detected by analysis as there is no encryption