Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencv 旋转不变检测器的最佳解决方案是什么?_Opencv_Image Processing_Computer Vision_Object Detection_Haar Wavelet - Fatal编程技术网

Opencv 旋转不变检测器的最佳解决方案是什么?

Opencv 旋转不变检测器的最佳解决方案是什么?,opencv,image-processing,computer-vision,object-detection,haar-wavelet,Opencv,Image Processing,Computer Vision,Object Detection,Haar Wavelet,我想创建一个基于级联分类器的对象检测器,唯一的问题是LBP和Haar特征不是旋转不变的。我想到的第一件事是以不同的角度旋转训练样本,但我怀疑生成的分类器是否具有良好的质量,此外,对象可能具有拉伸比例。有很多旋转不变检测器,例如,iPhone可以在任何方向实时识别人脸,所以我想知道它们是如何实现的?我更愿意使用OpenCV来解决这个问题。一些简单的解决方案怎么样 对于匹配徽标,我认为这是您需要的:傅立叶描述符是旋转不变量(以及平移和缩放不变量);然后,我们的想法是在傅立叶描述符结果上训练您可以使用

我想创建一个基于级联分类器的对象检测器,唯一的问题是LBP和Haar特征不是旋转不变的。我想到的第一件事是以不同的角度旋转训练样本,但我怀疑生成的分类器是否具有良好的质量,此外,对象可能具有拉伸比例。有很多旋转不变检测器,例如,iPhone可以在任何方向实时识别人脸,所以我想知道它们是如何实现的?我更愿意使用OpenCV来解决这个问题。

一些简单的解决方案怎么样


对于匹配徽标,我认为这是您需要的:

傅立叶描述符是旋转不变量(以及平移和缩放不变量);然后,我们的想法是在傅立叶描述符结果上训练您可以使用的任何分类器(傅立叶描述符上的PCA,与SVM关联似乎是一个合乎逻辑的选择)


请参见

查看位于的对象检测框架

该框架使您能够学习自定义对象检测器(例如,用于查找正面、垂直面),然后在运行时将其用于旋转不变检测

这是通过在多个不同方向上使用旋转版本的物体检测器扫描图像来实现的。请注意,这可以在没有级联再培训或图像重采样的情况下完成,并且它应该在现代机器上实时工作(提供的人脸检测演示确实如此)


有关详细信息,请访问。

您应该在谷歌上搜索特征不变检测器。有许多算法,但您必须找到适合您的应用程序的适当算法。也许一个好的起点是这个文档:epubs.surrey.ac.uk/726872/1/Tuytelaars-FGV-2008.pdf在计算机视觉中没有最好的解决方案。iPhone识别某些功能X的问题无关紧要,它是一个具有已知特征的单一设备,也可能有进一步的信息来轻松恢复旋转。另外,您还特别提到了人脸检测,这是一个经过充分研究的主题,具有经验证的良好解决方案。既然你不想做人脸检测(根据你在回答中的评论),那就最好不要指出它,因为它是一个完全不同的主题。我不认为这无关紧要,因为人脸检测中使用的一些想法可以用来检测其他物体,至少我应该试一试。顺便说一句,我不知道如何“恢复”旋转。我们可以使用加速计数据来确定iPhone本身的方向,但脸部的旋转可能会有所不同,而且仍然有效。它的工作速度太慢,对我来说太不稳定(我试图在一张大图上检测到一个小徽标)。如果你认为冲浪速度慢,可以使用ORB。但不要期待奇迹,你必须努力使它稳定。在我的实验中,ORB的表现比冲浪和筛选差得多。我怎样才能使它更稳定呢?试试声称比SURF更好的Short或FREAK……但根据我的经验,我发现SURF是最好的*。轮廓的主要问题是缺乏稳健性——在带有一些噪声和背景的图像上,可能无法正确检测它们(一些背景杂波会干扰目标轮廓,不同的轮廓可以合并成一个或一个连接的轮廓可以分割成不同的部分,等等)。但是感谢伟大的描述符!