我在写人脸识别程序。所以我的目标是在一定大小的图像上找到一张脸。在此基础上提出了HOG算法和支持向量机分类器。对于提供的图像,我可以分辨它是否是人脸,但只能用于固定大小的图像,其中人脸在中间。那么,我如何找到比SVM训练的人脸更大或更小的人脸,或者在图像上的未知位置?
发布于 2017-02-19 04:46:32
你需要的是“多尺度检测”。
基本的ides是在几种不同尺度的图像上运行你的探测器。因此,您需要创建图像的金字塔,并使用图像扫描对图像的每个级别运行您的检测器。
如果图像中的对象比您训练的分类器大,则在将图像作为金字塔的一部分进行下采样后,对象的大小将变小,当您在较小的尺度上运行检测器时,您将找到该对象。
对于比原始分类器小的对象,您将需要:对图像进行上采样并运行检测器,或者以您期望检测到的最小尺寸训练您的分类器。
看看https://www.mpi-inf.mpg.de/fileadmin/inf/d2/HLCV/cv-ss13-0605-sliding-window.pdf可以得到一些基本的解释。
你也可以尝试使用opencv内置的多尺度检测。opencv HOG multicale detector
https://stackoverflow.com/questions/42302785
复制相似问题