So, this is a problem that me and my friends are facing while doing a project for school.
Our idea is the following. Given a certain photo we want to be able to hide a message behind it. Our approach was the following.
We start by using the command Import to get the image to Mathematica. Then we use the command ImageData to extract the list that contains the pixels in the image.
Then, our approach was to identify a sequence which was not present in those digits. For example, there is no number that is of the form 0,1770... Then we could save the information in these types of numbers.
So, we generate these numbers and then, with the command ReplacePixelValue we were able to replace the pixels in the image. At this point we though that our work was done. But it happens that the information was not preserved with the Export of the coded image.
Our main questions are:
Is it true, by any chance, that exporting a file do not preserve the information? And
What would be the best approach to attain our goal?
Thank you som much for your attention. Have a nice day.
UPDATE
By using the ReplacePart in the list of pixels instead of ReplacePixelValue, I managed to obtain the correct list with the correct substitution of values. Although, when I ask for the image of this new list (by using the command Image) the values are edited. When I ask for a value that was substituted by me, the value is no longer there.
ResourceFunction["SteganographyInsert"]
interesting. To see what it does, the WFR page lets you download the source notebook. $\endgroup$