Extracting RAW pictures from memory dumps
w00tsec.blogspot.com
w00tsec.blogspot.com
I have a collection of RAW photos that have, due to bad transfers or old disks, become corrupted in ways where you can still see the original image, but color casts are off for half the image (strong purple or orange casts) or the image will suddenly jump and skip a few hundred pixels at random places. It seems like I am just missing a portion in the middle or something is misaligned, and I'd love to get these photos back. (I know that a JPG preview is hidden inside the file, which I could extract, but it would be nice to have the full image back as well.)
On the more open source front... There's little. Adroits algorithms have been published, be the implementation is proprietary. Poisel, Tjoa and Tavolato implemented the algorithm in Python+C, but its quite difficult to get their carver up and running, mostly due to "library rot" -- last I tried, there was no repo from where to download the particular version of PyQT they used and I didn't have the time to fix and translate all the old calls to new ones.
You could also try PhotoRec, but for fragmented data it isn't the best solution. Finally, you could try custom code to try and find the JPG blocks in the images and then all the combinations until you find something that makes sense.
Welcome to the beautiful and monstrous world of file/data carving!
There was also a program called ScreenJaeger [1] to grab images from memory.
[1] ftp://ftp.de.netbsd.org/aminet/gfx/misc/ScreenJaeger.readme