我正在iOS中对视频流进行实时逐帧分析。
我需要为每个帧分配一个分数,以确定其焦点。该方法必须非常快速地在移动设备上进行计算,并且应该相当可靠。
在尝试使用边缘检测器后,我尝试了简单的事情,但结果并没有给人留下深刻的印象。我也尝试使用框架元数据字典中提供的焦点分数,但它们受到图像亮度的显着影响,并且更多地受设备特定影响。
计算快速,可靠的焦点得分有哪些好方法?
答案 0 :(得分:3)
聚焦不良意味着边缘不是很清晰,细节也会丢失。高JPEG压缩会产生非常相似的失真。
大量压缩图像副本,解压缩并计算与原始图像的差异。即使在很少的位置,强烈的差异也应该意味着源图像具有在压缩中丢失的清晰细节。如果各地的差异相对较小,则来源已经很模糊。
可以在图像编辑器中轻松尝试该方法。 (不,我还没试过。)希望iPhone已经有一个优化的JPEG压缩器。
答案 1 :(得分:2)
人类视觉系统可能使用的一个简单答案是实现专注于边缘 跟踪。因此,如果可以在视觉序列上跟踪一组边缘,则可以使用强度分布 在这些边缘中,只有当它最陡的时候才会贬低。
答案 2 :(得分:1)
从理论的角度来看,模糊表现为高频内容的丢失。因此,您可以使用FFT并检查相对频率分布。 iPhone使用具有NEON指令的ARM Cortex芯片,可用于高效的FFT实现。
<9> @ 9000建议使用大量压缩的JPEG会产生非常少量的最大小波系数,这通常会导致低通滤波器本质上是什么。答案 3 :(得分:0)
考虑不同类型的边缘:例如峰值与阶梯边缘。无论重点如何,后者仍将存在。为了隔离前者,在梯度方向上使用非最大抑制。作为焦点得分使用两种不同分辨率下的抑制边缘的比率。