我把道理告诉你吧:
1、Jpeg是通过将图片分块,然后通过小波变换,如果错误的话应该是着一块不能再使用,而别的块的内容是可以恢复的。但是另一个方面,和这个块近邻的几个块可能就不行了,因为旁边的块的数据取决于这个块。
2、一般一个jpg文件里,当读到错的huffman编码时,可以对长度逐个尝试,也许能修复(一般一个jpg文件里,用到的huffman编码个数不会太多的,不会用满16bits能表示的所有编码)。但问题最重要的是:huffman编码,不定长的,一个编码错了,再读后面的编码可能都错位!
总结:
假设降低一下难度,重要标记码没有损坏,Huffman表和量化表没有损坏,只有压缩数据可能损坏。
1、怎样知道那部分的压缩数据坏了。
2、知道了怎样改。
3、如果在数据传输中修复是用检验码,但在数据文件中却是用文件的备份。
这3点疑问我们已经无从入手了。故此现在为止也没有最终的答案。希望你明白。
用ACDSEE或PHOTOSHOP、画图工具打开此文件,
如果这3个打不开就不能修复了。
方法一:1.
在损坏的图像点击鼠标右键的打开方式,用UltraEdit打开。
2.
然后看看图片二进制代码有没有损坏,可以拷贝一个可以正常观看的图片格式,用UltraEdit打开参考它的文件开头和文件结束数据块,
3.
然后在损坏的JPG文件添加正确的文件开头和结束数据块。
第二种方法:用最新版ps9。
1.
在图像编辑软件打开,
2.
然后在另存想要的格式图片这样就可以。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)