我的brother子为我女儿出生后拍了一些照片。
当我打开图片或查看预览时,它们都看起来像这样(下半部分为灰色):
起初我以为图像只是损坏了,但是在与它们玩耍之后,我发现有些奇怪的地方。
如果我右键单击图像并选择顺时针旋转(或逆时针旋转),则可以看到整个图像一秒钟。像这样:
但是一秒钟后,缩略图如下所示:
如果它可以访问完整图像一秒钟,是否有机会恢复完整图像?还是以某种方式保存下来?(否则,这些图片将无法恢复。)
我的brother子为我女儿出生后拍了一些照片。
当我打开图片或查看预览时,它们都看起来像这样(下半部分为灰色):
起初我以为图像只是损坏了,但是在与它们玩耍之后,我发现有些奇怪的地方。
如果我右键单击图像并选择顺时针旋转(或逆时针旋转),则可以看到整个图像一秒钟。像这样:
但是一秒钟后,缩略图如下所示:
如果它可以访问完整图像一秒钟,是否有机会恢复完整图像?还是以某种方式保存下来?(否则,这些图片将无法恢复。)
Answers:
这些很可能是JPEG图像。在极少数情况下,当图像没有完全复制并损坏时,我已经看到了这一点。
查看这篇文章,看看它是否可以帮助您解决/了解正在发生的事情。
http://www.impulseadventure.com/photo/fix-corrupt-jpeg-photo.html
关于将其从手机复制到PC的某些事情对我来说是造成这种情况的原因。当我通过电子邮件将照片发送给自己时,问题就解决了。
JPEG数据中的单个翻转位就可以做到这一点。
在JPEG位流中,FF 00有效,并且解码器将知道如何处理它。以位为单位是1111111100000000。让我们翻转最后一位,这样我们就有1111111100000001。以十六进制表示的是FF01。大多数解码器将尝试将其解释为JPEG标记,但是没有相应的JPEG标记。结果,解码器停止解码,可能会报告无效的JPEG标记。从该点开始,图像将是灰色或其他颜色的纯色块。
JPEGSnoop也将提及无效标记+字节地址。使用二进制编辑器,您可以尝试将FF 01更改为FF00。根据我的经验,虽然很少会翻转一位,但会翻转一组字节。
它通常可以修复,我为此创建了一个名为JPG-Repair Toolkit的工具。