标签: sift

SIFT,HOG和SURF c ++,opencv

我有一个简单的问题,我想知道,有哪些库可用,并且可以在c ++或opencv中实现SIFT,HOG(直方图定向梯度)和SURF的良好结果?

因此:1-如果可以,请给我链接代码,我将非常感激.2-如果你知道其中一个或任何类型的信息引导我到我想要的东西,我也会非常感激.

谢谢

c++ opencv surf sift

7
推荐指数
1
解决办法
1万
查看次数

SIFT预测

我正在使用Andrea Vedaldi的SIFT实现来计算两个图像的筛选描述符.但我想知道是否可以使用SIFT描述符预测对象在下一个图像中的位置.

image-processing computer-vision sift

7
推荐指数
1
解决办法
426
查看次数

合并多个cv :: Mat?

基本上我有3个像这样的垫子:

Mat descriptors1
Mat descriptors2
Mat descriptors3
Run Code Online (Sandbox Code Playgroud)

每个描述符的加载方式如下:

extractor->compute( object, kp, descriptors );
Run Code Online (Sandbox Code Playgroud)

我怎么能在单个Mat中加入所有描述符(将一个mat添加到另一个)?

例:

Mat fullDesc = descriptors1 + descriptors2 + descriptors3;
Run Code Online (Sandbox Code Playgroud)

opencv surf sift

7
推荐指数
1
解决办法
7924
查看次数

Phash vs. SIFT识别相似图像

我对都有疑问

首先,我使用SIFT来识别实时服务中的类似图像.像手机相机的照片一样,旋转量小,效果模糊.

我发现了Phash.所以,我在其演示页面上测试了phash .但结果让我感叹.

这是上述测试的结果:

Phash的演示

在该测试中,两个图像固定在x轴上.所以他们没有轮换.但右图像的徽标被删除,人被移到左侧.在我看来,这是'非常相似'.此外,SIFT完全抓住了这一点.

现在,这是个问题.

  1. pHash比SIFT快?
  2. pHash的准确度是否可靠?
  3. SIFT的输出太大,无法用于实时服务.所以我必须使用hash来使输出更小,如LSH(局部敏感散列).我尝试其他任何方式?

image process vision sift phash

7
推荐指数
1
解决办法
2399
查看次数

ValueError:无法将大小为2的序列复制到维度为4的数组轴

任何人都可以向我解释这个错误来自哪里?这是什么意思?我该如何解决这个问题?也许我的问题太笼统了!抱歉,但我不知道我应该把更多东西放在这里!:P

错误:

    Traceback (most recent call last):
  File "C:\test\7.4.3.bench.py", line 9, in <module>
    print imagesearch.compute_ukbench_score(src,imlist[:100])
  File "C:\test\imagesearch.py", line 168, in compute_ukbench_score
    pos[i] = [w[1]-1 for w in src.query(imlist[i])[:4]]
  File "C:\test\imagesearch.py", line 128, in query
    h = self.get_imhistogram(imname)
  File "C:\test\imagesearch.py", line 91, in get_imhistogram
    "select rowid from imlist where filename='%s'" % imname).fetchone()
ValueError: cannot copy sequence with size 2 to array axis with dimension 4
Run Code Online (Sandbox Code Playgroud)

这是imagesearch.py​​:

from numpy import *
import pickle
from pysqlite2 import dbapi2 as sqlite


class Indexer(object):

    def …
Run Code Online (Sandbox Code Playgroud)

python opencv sift python-2.7

7
推荐指数
1
解决办法
3万
查看次数

筛选实现::来自不同八度的关键点

我想在MATLAB中实现SIFT.

我通过在DOG(高斯差)空间中定位局部最大值和最小值来获得(比如说)4个不同八度音阶的关键点.然而,我对于如何处理最后3个八度音阶中的关键点感到茫然.

难道我包括他们在关键点的原始图像,如果是,那么我怎么做翻译从缩小图像与原件例如,像素(I,J)256 x 256图像(第二八度)至像素(I" J")512x512图像(第1个八度).我尝试了许多筛选教程,但没有找到任何结论.

computer-vision sift

7
推荐指数
1
解决办法
725
查看次数

在OpenCV 3.0中计算密集SIFT功能

从3.0版开始,DenseFeatureDetector不再可用.有人可以告诉我如何在OpenCV 3.0中计算密集SIFT功能吗?我在文档中找不到它.

非常感谢你提前!

c++ computer-science opencv sift

7
推荐指数
2
解决办法
4548
查看次数

如何使用opencv功能匹配来检测copy-move伪造

在我的opencv项目中,我想检测图像中的复制移动伪造.我知道如何使用opencv FLANN在2个不同的图像中进行特征匹配,但是我对如何使用FLANN进行图像中的检测复制 - 移动伪造感到困惑.

P.S1:我得到了图像的筛选关键点和描述符,并坚持使用特征匹配类.

P.S2:特征匹配的类型对我来说并不重要.

提前致谢.

更新:

这些图片是我需要的一个例子

输入图像

结果

并且有一个代码可以匹配两个图像的特征,并在两个图像(不是一个)上执行类似的操作,android native opencv格式的代码如下所示:

    vector<KeyPoint> keypoints;
        Mat descriptors;

        // Create a SIFT keypoint detector.
        SiftFeatureDetector detector;
        detector.detect(image_gray, keypoints);
        LOGI("Detected %d Keypoints ...", (int) keypoints.size());

        // Compute feature description.
        detector.compute(image, keypoints, descriptors);
        LOGI("Compute Feature ...");


        FlannBasedMatcher matcher;
        std::vector< DMatch > matches;
        matcher.match( descriptors, descriptors, matches );

        double max_dist = 0; double min_dist = 100;

        //-- Quick calculation of max and min distances between keypoints
          for( int i = 0; i < descriptors.rows; i++ …
Run Code Online (Sandbox Code Playgroud)

c++ opencv sift flann

7
推荐指数
1
解决办法
1244
查看次数

使用opencv进行特征检测的正确方法

我的目标是在静态图像和视频中找到已知的徽标.我希望通过使用KAZE或AKAZE和RanSac进行特征检测来实现这一目标.

我的目标是:https://www.youtube.com/watchv = nzrqH ...

在尝试使用文档中检测示例时,我遇到了几个问题:

  • 对象分辨率:已知对象与对象应该位于的场景的分辨率之间的大小差异有时会破坏检测算法 - 尽管图像质量仍然可以正常,但在低分辨率的图像中将无法识别对象.人类的眼睛.
  • 与背景的颜色对比:看起来,检测很容易被不同的背景对比分散注意力(例如:对象是白色背景上的徽标黑色,黑色背景上的场景中的徽标是白色).如何针对不同的发光和背景对比使检测更加稳健?
  • 预处理:是否应该对对象/场景进行任何类型的预处理?例如,将场景放大到特定大小?是否有任何指导如何在几个步骤中进行特征检测以获得最佳结果?

opencv surf sift feature-detection

7
推荐指数
1
解决办法
670
查看次数

筛选算法的颜色是不变的吗?

我将使用筛选来识别某种类型的对象,如果该对象的颜色发生变化,它能识别它吗?我将使用opencv库进行筛选cv2.xfeatures2d.SIFT_create()

python opencv sift opencv3.0

7
推荐指数
2
解决办法
3023
查看次数