我正在编写面部识别程序。所以我的目标是在某个尺寸的图像上找到一张脸。目前我制作了HOG算法和SVM分类器。对于提供的图像,我可以判断它是否是面部,但仅适用于面部位于中间的固定尺寸的图像。那么我如何找到大于或小于SVM训练的面部或图像上未知位置的面部?
答案 0 :(得分:0)
您需要的是"多尺度检测"。
基本思路是在几个不同比例的图像上运行探测器。 因此,您需要创建图像的金字塔,并且对于图像的每个级别,使用图像扫描运行检测器。
如果图像中的对象比您训练的分类器大,那么在将图像作为金字塔的一部分进行下采样之后,对象的大小将会更小,当您在较低比例上运行检测器时,您会发现对象
对于小于原始分类器的对象,您需要: 对图像进行上采样并运行检测器或训练您的分类器,使其达到您希望检测的最小尺寸。
查看https://www.mpi-inf.mpg.de/fileadmin/inf/d2/HLCV/cv-ss13-0605-sliding-window.pdf进行一些基本的探索。
此外,您可以尝试使用内置多比特检测的opencv。 opencv HOG multicale detector