如何判断JPEG图片的完整性

通过网络读取JPEG图片会出现图片只有上半部分加载成功,下半部分加载失败的情况,例如下图。

利用opencv解析图片会提示“premature end of jpeg file”。

那么如何识别出一张图片是否加载正确呢,提供以下两种判断方法。

通过判断文件的最后两个字节是否是0xff 0xd9

判断文件的最后几行像素值是否完全一致

判断文件结尾是否是0xff 0xd9

本文以QT举例说明,代码如下:

  判断文件最后几行像素值是否安全一致

以opencv举例,判断最后100行的像素值是否一致(行数可根据实际需要调整)。为避免某两行的值凑巧相等,将100行分成2块各50行判断。代码如下:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容