SIFT在OpenCV中没有找到参考图像中的任何特征 [英] SIFT is not finding any features in reference image in OpenCV

查看:197
本文介绍了SIFT在OpenCV中没有找到参考图像中的任何特征的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个目标标志的图片,我想用来在其他图片中找到目标标志。我目前运行两种不同的检测算法,以帮助我检测图像上的任何标志。我使用的第一个检测是直方图,其中我搜索图像在屏幕上的颜色非常相似的一般区域。从那里我运行SIFT进一步获得我正在寻找的对象。这在大多数标志上工作,但我的目标标志,甚至没有拾取和关键点在标志。



我想知道如果有什么我可以做帮助找到图像中的一些关键点。非常感谢任何建议。



以下是SIFT未提取的图片:





提前感谢。 / p>

EDIT
我累了使用Julien的模板匹配和模型的不同比例和旋转的想法,但仍然没有得到什么结果。我包含了一个我想要测试的图片。



解决方案

您的图片中没有关键点...



为什么?




  • 因为在统一的颜色平面上没有关键点

  • 因为一切都在图像中是对称的,所以它不会真正有助于具有关键点,根据特定的特征提取器,它们将具有相同的特征向量
  • li>
  • 因为在交叉方向上没有拐角或高梯度,会导致许多特征检测器的关键点。



你可以尝试的是一个模板匹配方法,如果你正在搜索这个标志没有大的改变(旋转,翻译,噪音等)一个简单的相关性是最简单的。



如果你想进一步,我的一个想法,我从来没有实现,但可能是有趣的:将有缩放,旋转,扭曲,去饱和,增加噪声与函数,然后应用模板匹配的这套图像这个想法来自于SIFT和小波变换,其中我们使用了某些方式(旋转,噪声,频率等)改变的函数类型。 ),以便给我们的变换提供鲁棒性,以抵抗您想要检查的任何图像中发生的这些基本变化。
这可能是一个想法!





这是一个总结我的想法的图片,你旋转和缩放你的模板,实际上它创建一个新的旋转/缩放模板,你可以尝试匹配,它将增加鲁棒性(即使它可以很长,如果你选择很多参数改变)。好吧,我不是说这是一个算法,但它可能是一个有趣的和非常基本的想法,尝试...



Julien,


I have an image of the target logo that I am trying to use to find target logos in other images. I am currently running two different detection algorithms to help me detect any logos on the image. The first detection I use is Histogram based in which I search the image for a general area on screen where the colors are very similar. From there I run SIFT to further get the object that I am looking for. This works on most logos however the Target logo that I have isn't even picking up and keypoints in the logo.

I was wondering if there was anything I could do to help locate some keypoints in the image. Any advice is greatly appreciated.

Below is the image that isn't being picked up by SIFT:

Thanks in advance.

EDIT I tired using Julien's idea for template matching based and different scales and rotations of the model, but still got little results. I have included an image that I am trying to test against.

解决方案

There is no keypoint in your image...

Why ?

  • Because there is no keypoint in a uniform color plane (why would there be ? as it is uniform nothing is an highlight)
  • Because everything is symmetric in your image, it wouldn't really help to have keypoints, according to certain feature extractor they would have the same feature vectors
  • Because there's no corner or high gradient in cross directions which would result in keypoints fro many feature detectors

What you could try is a template matching method if you are searching for this logo without big changes (rotation, translation, noise etc) a simple correlation is the easiiiiest.

If you want to go further, one of my idea, that I have never implemented but which could be funny : would be to have sets of this image that you scale, rotate, warp, desaturate, increase noise with functions and then apply template matching with this set of images you got from your former template... Well this idea comes from SIFT and Wavelet transform, where we use sort of functions that we change in some ways (rotation, noise, frequency etc...) in order to give robustness to our transform against these basic changes that occur in any image that you want to "inspect". That could be an idea for you !

Here is an image summarizing my idea, you rotate and scale your template, actually it creates a new rotated/scaled template that you can try to match, it will increase robustness (even if it can be very long if you choose a lot of parameters to change). Well i'm not saying that's an algorithm, but it could be a funny and very basic idea to try...

Julien,

这篇关于SIFT在OpenCV中没有找到参考图像中的任何特征的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆