【光电智造】算法|OpenCV快速傅里叶变换(FFT)用于图像和视频流的模糊检测

今日光电

翻译自【OpenCV Fast Fourier Transform (FFT) for blur detection in images and video streams】,原文链接:

本文仅作学习分享。


(相关资料图)

原始模糊检测方法:

模糊检测,顾名思义,是检测图像是否模糊的算法。

模糊检测可能的应用包括:

图像质量的自动分级

帮助专业摄影师在100到1000张的照片拍摄过程中自动丢弃模糊/低质量的照片

将OCR应用于实时视频流,但仅对非模糊帧应用昂贵的OCR计算

这里的关键要点是,为在理想条件下捕获的图像编写计算机视觉代码总是比较容易的。

与其尝试处理质量非常差的图像的边缘情况,不如检测并丢弃质量差的图像(比如有明显模糊的图像)。

这种模糊检测程序既可以自动丢弃质量差的图像,也可以简单地告诉终端用户:”嘿,老兄,再试一次,让我们在这里捕捉一个更好的画面”。

请记住,计算机视觉应用程序应该是智能的,因此有了“人工智能”这个术语——有时候,“智能”可以只是检测输入数据的质量是否太差,而不是试图弄懂它。

什么是快速傅立叶变换(FFT)?

快速傅里叶变换是计算离散傅里叶变换的一种方便的数学算法。它用于将信号从一个域转换为另一个域。

首先使用本教程的“下载”部分下载源代码和示例图像。一旦你解压缩文件,你将有一个目录组织如下:

我们的模糊检测器实现需要matplotlib和NumPy。我们将使用内建在NumPy中的快速傅里叶变换算法作为我们方法的基础;

第4行定义detect_blur_fft函数,接受四个参数:

图片image:我们对模糊检测输入图像

大小size:以图像中心点为中心的半径的大小,我们将使FFT偏移为零

阈值thresh:用于确定图像是否被认为是模糊的,将与震级的平均值(稍后详细说明)进行比较的一个值

标识符vis:一个布尔值,指示是否使用matplotlib可视化/绘制原始输入图像和大小图像

给定输入图像,首先获取它的尺寸(第7行)并计算中心(x, y)坐标(第8行)。

接下来,我们将使用NumPy的快速傅里叶变换(FFT)算法实现来计算离散傅里叶变换(DFT):

现在我们的detect_blur_fft 辅助函数已经实现,让我们通过创建一个Python驱动程序脚本来使用它,该脚本从磁盘加载一个输入图像,然后对其应用FFT模糊检测。

第2-6行进行导入,特别的是,我们需要导入我们在上一节中实现的detect_blur_fft函数。

从这里,我们解析四个命令行参数:

--image:用于模糊检测的输入图像的路径。

--thresh:我们的模糊检测器计算阈值。

--vis:我们的标志符,指示是否将输入图像的幅度值图像可视化。

--test:为了测试,我们可以逐步模糊输入图像,并对每个示例进行基于fft的模糊检测;此标志指示我们是否将执行此测试。

--image、--thresh和--vis参数分别对应于我们在上一节实现的detect_blur_fft函数的image、thresh和vis参数。

让我们继续,加载我们的输入图像,执行快速傅里叶变换模糊检测:

这里你可以看到我在锡安国家公园的地铁徒步旅行的输入图像-图像被正确地标记为不模糊。

让我们试试另一张图片,这是我家的狗,Jemma:

这幅图像有明显的模糊,因此被标记为模糊。

在这里,您可以看到我们的图像很快变得模糊和不可读,正如输出所示,我们的OpenCV FFT模糊检测器正确地将这些图像标记为模糊。

下面是一个可视化的快速傅里叶变换幅度值,图像变得越来越模糊:

----与智者为伍为创新赋能----

联系邮箱:uestcwxd@126.com

QQ:493826566

关键词:

    为你推荐

    当前最新:接骨木有什么技巧?接骨木的功效与作用

    接骨木又名公道老、马尿骚等,接骨木不仅是一种常见的花卉植物,而且接骨木全株都可入药,接骨木额什么作用了,下面我们就来分享一下接骨木

    来源: 23-01-18

    【环球报资讯】和田枣和若羌枣的区别 如何挑选和田枣?

    新疆和田枣果形大、颗粒饱满、果肉厚实、皮薄核小、营养丰富,口味更甜醇。每一颗“和田枣”都是自然精华的结晶,和田枣产自新疆和田地区,

    来源: 23-01-18

    世界观点:苹果套袋技术注意什么?苹果的套袋技术

    苹果套袋是我国苹果生产中广泛采用的一项重要管理措施。苹果套袋可以改善果实外观品质,防治病虫害,减少农药残留,提高商品价值,增加经济

    来源: 23-01-18

    中国重工和中国船舶差距82% 同期涨幅仅为10%

    2022年上半年,中国重工涨幅为-8 96%,同行业的中国船舶涨幅为7 55%,两者看起来相差不大。但是,从4月27日的底部算起,中国船舶涨幅为82%

    来源: 23-01-18

    国美零售的三年蜕变:苦练内功关键数据亮眼

    5月28日晚间,京东溢价37 91%认购国美零售1亿美元的可转债,初步转股价为1 255港元 股,如最终全部行使转化权,京东将获得6 22亿股国美零

    来源: 23-01-18
    返回顶部