有没有人知道如何检查从CD复制的图像(.jpeg)是否与粘贴到PC的图像完全相同。 是否有算法可以检查文件的所有像素或写入数据?
提前感谢您的回答!
答案 0 :(得分:1)
这需要发表评论但是太长而不适合:
听起来你想要比较图像而不是文件本身。后者很容易。我认为你想要进行更难的图像比较。
JPEG的问题在于它有损。该过程引入了错误。如果您拍摄JPEG图像,将其打开并再次保存,然后打开保存的图像,它可能与第一张图像不完全相同。
即使采样和量化表相同,您仍然可以得到舍入误差。
首先检查像素尺寸是否匹配。然后,对于每个像素,转换为YCbCr颜色空间并比较范围内的值。
伪代码
srcY = YfromRGB (srcR, srcG, srcB) ;
dstY = YfromRGB (dstR, dstG, dstB) ;
if ((srcY - dstY) * (srcY - dstY) < SOMEDELTA) they are roughy the same
为每个像素做同样的Cb和Cr。
在这里,我只考虑了JPEG流程的差异。有些编码器可能会进行伽马校正,甚至更多地抛弃它。