2
\$\begingroup\$

I've got horizontal colored bands in photos copied to my computer that were not there when I viewed the photos on the camera. I eventually ruled out everything else and determined that the USB card reader was the problem. How do the photos get changed during the copy process?

The card reader claimed to be USB 3.0 compatible. The computer in question has USB 2.0 (Lenovo X220). The images in question are all JPG.

I got rid of the problem by copying the photos with another reader.

Here's the photo with the colored bands: Streaky photo

\$\endgroup\$
4
  • 1
    \$\begingroup\$ Maybe this is a question better asked at superuser.com as it is more about computer hardware (the USB reader) changing data (that happens to be a photo). I've flagged it so a mod can decide, we'll see what the community does. \$\endgroup\$ Commented Mar 20, 2014 at 18:26
  • \$\begingroup\$ Could also be a some sort of incompatibility between the chip and the reader. \$\endgroup\$
    – Jagular
    Commented Mar 20, 2014 at 18:30
  • \$\begingroup\$ Does copying it again with the same reader produce the same problem consistently? \$\endgroup\$
    – AJ Henderson
    Commented Mar 20, 2014 at 19:14
  • \$\begingroup\$ Yes, it produced the same general problem. There would be colored horizontal bands and mis-aligned regions in the photo. I don't think the errors were exact from one try to the next. \$\endgroup\$
    – Jagular
    Commented Mar 20, 2014 at 19:18

1 Answer 1

5
\$\begingroup\$

The image was corrupted by random bytes of information being lost in the data transfer. You can tell because each time information is lost, the image shifts (because pixels end up missing as it fills each line). It's also not an even number of pixel information since some of the times that information is lost, it causes the color information to get shifted by a set of values (red become blue, blue becomes green, green becomes red, etc) This is why on some of the shifts you get a sudden color change.

So instead of something like this:

111222333
444555666
777888999

You end up with something like this:

111233344
456667778
88999

And pixel is still read like this:

RGBRGBRGB
RGBRGBRGB
RGBRGBRGB

This is most likely either the beginnings of a bad card or a bad reader, but you can't tell for sure without further testing and trying to reproduce it. I would be careful with what you store on the card that experienced the problem unless you reproduce the issue on multiple cards with the same reader.

\$\endgroup\$
2
  • \$\begingroup\$ It's definitely a bad reader. I didn't describe all the steps I took to verify that. As a computer guy, I find it interesting that copying files from an external device can have failures like this without some kind of validation step failing(and a warning message). Such validations certainly happen on hard disk to hard disk copies. \$\endgroup\$
    – Jagular
    Commented Mar 21, 2014 at 14:25
  • \$\begingroup\$ @Jagular - Actually I'm pretty sure copy operations typically do not verify the copy, they just have a very, very low failure rate. answers.microsoft.com/en-us/windows/forum/windows_vista-files/… \$\endgroup\$
    – AJ Henderson
    Commented Mar 21, 2014 at 14:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.