Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> After 24 months, one of the drives had a %95 loss, almost every picture was lost cut-off bottom half or so.

If these are JPEGs with a grey or green lower half, it's likely only a few 16x16 macroblocks are corrupted and you can recover the rest.

This cannot be done programmatically because you have to guess what the average colour of the block was, but it can be worth it for precious pictures.

 help



This is one of the reasons I like the PNG format - it has checksums. You can fix a surprising number of broken files by bruteforce testing plausible errors until the checksum passes.

With JPEG one of the big problems is that the data is Huffman-encoded without any inter-block markers (except maybe Restart Markers, if you're lucky). This means that a single bitflip can result in a code changing length, causing frameshifts in many subsequent blocks and rendering them all undecodable. If you have a large block of missing data (e.g. a 4k-byte sector of zeros), then you have to guess where in the image the bitstream resumes, in addition to guessing the value of the running DC components.


It's surprising that it can't be done programmatically, since "minimize the color difference above and below this super obvious line" seems like it should be a pretty straightforward success criterion.

AI may be the “killer app,” for these kinds of “back up and squint” judgment calls.

yes they were grey



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: