在图像上查找未知大小的对象

我正在编写人脸识别程序。因此,我的目标是在某尺寸的图像上找到人脸。目前,我已经实现了HOG算法和SVM分类器。对于提供的图像,我可以判断它是否是人脸,但仅限于固定尺寸且人脸位于图像中央的图像。那么,如何找到比SVM训练的尺寸更大或更小的人脸,或者在图像上的未知位置上的人脸呢?


回答:

您需要的是“多尺度检测”。

基本思想是在图像的不同尺度上运行您的检测器。因此,您需要创建图像的金字塔,并在图像的每个层次上使用图像扫描运行您的检测器。

如果图像中的对象比您训练的分类器大,那么在您将图像作为金字塔的一部分进行降采样后,对象的尺寸将变小,当您在较低尺度上运行检测器时,您将找到该对象。

对于比您的原始分类器小的对象,您需要:上采样图像并运行检测器,或者在您期望检测到的最小尺寸上训练您的分类器。

请查看https://www.mpi-inf.mpg.de/fileadmin/inf/d2/HLCV/cv-ss13-0605-sliding-window.pdf以获取一些基本的解释。

此外,您还可以尝试使用OpenCV内置的多尺度检测。OpenCV HOG多尺度检测器

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注