为什么同一场景的某些JPEG文件比其他大?
我正在使用Foscam FI8910W ip摄像机在恒定照明条件下查看静态场景。当我拉回抓帧时,大小约为35 KB。我可以一遍又一遍地执行此操作,它始终约为35 KB,但由于电子图像捕获固有的各种噪声而有所波动。这种随机波动最多仅约为1 KB。 大约每2500帧,一帧的图像大小突然达到70 KB的数量级。如果您想在相机预热时产生热噪声,则不会逐渐向上爬。1帧将是70 KB(ish),然后返回到35 KB大小的帧。 之前,另一场比赛是在另一个场景中进行。普通文件大小为39 KB,然后在10,000帧中,有4个大小约为77 KB。图像大小直方图如下所示: 在您提出问题之前,我已经设法保存了其中一个框架,看起来与其他所有框架完全一样,没有出现预期的噪声波动。它们具有大约23,000左右相同数量的独特颜色。因此,这不是一只飞蛾正好随机落在镜头上一帧然后飞走了。为了完整起见,我已经进行了另一轮图像处理,这是典型图像示例(反射是IR照明器):- 这是异常图像: 您可以看到没有区别。对不起,河马。我对JPEG算法非常熟悉,除了Foscam的实现出现编码错误外,我看不到这是怎么发生的。但是,在某些JPEG转换函数(例如离散余弦转换或量化)中是否会固有地存在一些混乱?从统计上讲,人们期望文件大小呈正态分布,这就是我看到的大约39 KB。然后是77 KB的几个异常值。因此,它似乎不是随机的。 这是在CS中而不在硬件中的原因,我是在问这是否是与JPEG编码算法有关的编程代码现象?似乎不太可能,但是异常是随机且不常见的,并且没有人与设备的交互。JPEG编码稳定吗? 您可能不熟悉此现象的原因是,由于图像看起来相同,因此没有人真正看过文件大小。文件大小对我来说至关重要,因此我注意到了。大约每2500帧如何发生一次? 补充:- 发布这些图像将无法正常工作,因为imgur软件会重新采样上传的文件。因此,虽然我发布了37K和73K文件,但imgur已将其重新采样到35K。这似乎是一个Stack Exchange问题,对于处理图像处理,数据压缩和分析的站点似乎具有讽刺意味。 这是我对图像的处理。这是正常图像和异常之间的归一化差异。图像符合您的期望,在高频区域有JPEG噪点。即使它看起来是单色的,这也是RGB图像。颜色立方体中有8000种独特颜色(代表噪点)。 补充2:- 根据要求,可以从样本帧中下载4个正常帧和2个异常帧。这是一个不同的场景,但是异常行为仍然发生,因此证明了它是一致的。