标签: feature-detection

什么是图像处理(算法或描述)中的特征描述符?

我常常在图像特征的上下文中混淆术语描述符的含义.描述符是点的局部邻域的描述(例如浮点向量),还是描述输出描述的算法?那么,功能提取器的输出究竟是什么呢?

我一直在问这个问题很长一段时间,而我提出的唯一解释是描述符是算法和描述.特征检测器用于检测特征点.然而,功能提取器似乎没有任何意义.

请帮我澄清这个误解.谢谢!

image-processing feature-extraction computer-vision feature-detection

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

使用OpenCV和Python检测触摸/重叠的圆/椭圆

我想测量圆的圆度("圆"高度和宽度或椭圆参数的差异).圆圈在图片中给出,如下所示:

在做了像color2gray,阈值处理和边界检测之类的常用操作后,我得到如下图所示:

有了这个,我已经尝试了很多不同的东西:

  • 列表项目使用findContour分水岭(类似于此问题) - > openCV将圆圈之间的空间检测为闭合轮廓而不是圆圈,因为它们粘在一起而不形成闭合轮廓
  • fitEllipse也存在同样的问题.我将椭圆拟合在黑色背景轮廓上,而不是介于两者之间.
  • 只是尝试应用hough transforamtion(如代码和第三张图片所示)也会导致奇怪的结果:

看到这里的代码:

import sys
import cv2
import numpy
from scipy.ndimage import label

# Application entry point
#img = cv2.imread("02_adj_grey.jpg")
img = cv2.imread("fuss02.jpg")

# Pre-processing.
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)    
cv2.imwrite("SO_0_gray.png", img_gray)

#_, img_bin = cv2.threshold(img_gray, 0, 255, cv2.THRESH_OTSU | cv2.THRESH_BINARY)
_, img_bin = cv2.threshold(img_gray, 170, 255, cv2.THRESH_BINARY)
cv2.imwrite("SO_1_threshold.png", img_bin)

#blur = cv2.GaussianBlur(img,(5,5),0)
img_bin = cv2.morphologyEx(img_bin, cv2.MORPH_CLOSE, numpy.ones((3, 3), dtype=int))
cv2.imwrite("SO_2_img_bin_morphoEx.png", img_bin)

border = img_bin - cv2.erode(img_bin, None)
cv2.imwrite("SO_3_border.png", border)


circles …
Run Code Online (Sandbox Code Playgroud)

python opencv image-processing feature-detection hough-transform

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

检测浏览器对CSS动画SVG的支持

我正在玩CSS动画SVG元素并且遇到了这样的问题,即使所有使用的技术都被某些浏览器支持,但组合不是,即 - CSS动画DIV是工作但SVG元素不支持.我想知道是否有办法检测浏览器是否能够SVG使用动画元素CSS.

这是一个jsFiddle的例子.它适用于最新版本的Chrome,Firefox和Safari.但是当用例如Firefox 5打开它时,只有div旋转而rect不是.

css svg cross-browser feature-detection

21
推荐指数
1
解决办法
2410
查看次数

尺寸和响应在SURF关键点中的确切代表什么?

我正在使用OpenCV 2.3进行关键点检测和匹配.但我对检测算法给出的参数sizeresponse参数有点困惑.他们究竟是什么意思?

基于OpenCV手册,我无法弄清楚:

float size:有意义的关键点邻域的直径

float response:选择最强关键点的响应.可用于进一步分类或子采样

我认为跟踪的最佳点是响应最快的那个,但似乎并非如此.那么我怎样才能对冲浪探测器返回的关键点进行二次采样,以便在可跟踪性方面保持最佳?

opencv surf feature-detection template-matching video-tracking

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

DMatches中的距离属性是什么意思?

我有一个简短的问题:当我在做的OpenCV功能匹配,什么是distance属性意味着DMatchesMatOfMatches

我知道我必须过滤较大距离的比赛,因为它们不如距离较远的那样好.但这个属性的含义是什么?这是一种偏差吗?

opencv feature-extraction feature-detection

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

Android中的OpenCV图像比较

[编辑] 我设计了一些图像比较代码.匹配的部分仍然有点缺陷,我希望得到一些帮助.该项目可在 - GitHub找到.

我有这两个图像Img1Img2:

在此输入图像描述 在此输入图像描述

当我在openCV中使用以下命令时

Mat img1 = Highgui.imread("mnt/sdcard/IMG-20121228.jpg");
Mat img2 = Highgui.imread("mnt/sdcard/IMG-20121228-1.jpg");

try{
    double l2_norm = Core.norm( img1, img2 );
    tv.setText(l2_norm+"");
} catch(Exception e) {
    //image is not a duplicate
}
Run Code Online (Sandbox Code Playgroud)

我得到了l2_norm的double值.对于重复的图像对,此双值会有所不同.但是如果图像不同,则抛出异常.这是我识别重复图像的方式吗?还是有更好的方法?我用Google搜索广泛,无法找到真正有说服力的答案.我希望代码和解释如何比较两个图像并获得布尔值truefalse取决于图像.

编辑

Scalar blah= Core.sumElems(img2);
    Scalar blah1=Core.sumElems(img1);

    if(blah.equals(blah1))
    {
        tv.setText("same image");
    }
    }
Run Code Online (Sandbox Code Playgroud)

我试过这个,但if条件永远不会满足.我假设有一些差异,但没有任何compare功能Scalar.我该怎么办?

编辑

try{
    Scalar blah= Core.sumElems(img2);
    Scalar blah1=Core.sumElems(img1);
    String b=blah.toString();
    String b1=blah1.toString();
    System.out.println(b+" "+b1);
    double comp=b.compareTo(b1);
    tv.setText(""+comp);
    }
Run Code Online (Sandbox Code Playgroud)

这种方法又有缺陷.虽然它可以用于比较具有相当精确度的图像,但是当图像具有不同的尺寸时它会失败. …

android opencv image-comparison surf feature-detection

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

嵌套CSS @supports和@media查询

我一直试图弄清楚是否有可能嵌套CSS特征查询(也称为"CSS @supports")和常规媒体查询,以及这样做的正确方法.

示例A显示了媒体查询中的功能查询.
示例B显示了要素查询中的媒体查询.

它甚至可以嵌套它们吗?如果是这样,是否有一种首选的嵌套方式?A还是B?

.foo {
    background: red;
}

/* EXAMPLE A */
@media (min-width: 50em) {
    .foo {
        background: green;
    }

    @supports (flex-wrap: wrap) {
        .foo {
            background: blue;
        }
    }
}

/* EXAMPLE B */
@supports (flex-wrap: wrap) {
    .foo {
        background: green;
    }

    @media (min-width: 50em) {
        .foo {
            background: blue;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

css css3 feature-detection media-queries

19
推荐指数
1
解决办法
6833
查看次数

中心环绕机制是否在opencv中实现?

我是生物学显着区域探测器概念的新手,我读了一些论文,他们总是使用Center-Surrond计算机特征强度,颜色和方向的机制.我GOOGLE了这一机制,但我没有发现通过实施它OpencvJavaAPI或以任何其他库.

实际上我想创建显着图,并且据我所研究,强度,颜色,方向等一些特征将由中心环绕机制/滤波器计算.

我阅读了很多o出版物和最好的出版物,只是提供了伪代码,但仍然缺乏清晰度.我的意思是,如果你有一个关于详细问题的问题,以了解该过滤器是如何工作的,那么伪代码将无济于事.

中心环绕滤波器机制是Opencv在任何其他库中实现的吗?

请使用和伪代码提供说明.

opencv image-recognition pattern-matching edge-detection feature-detection

17
推荐指数
1
解决办法
684
查看次数

HTML 5输入类型="日期"在Firefox中不起作用

我正在使用HTML5 <input type="date" />,它在Chrome中运行良好,我可以通过日历弹出窗口选择日期.

但在Firefox中,它就像一个文本框,没有日历弹出.

经过一些研究后,我看到很少使用webshims,modenizr等解决方案...但我不想使用jQuery.

有替代方案吗?如何让它在Firefox中运行?

html javascript firefox html5 feature-detection

16
推荐指数
2
解决办法
5万
查看次数

使用JavaScript在新窗口/选项卡(target = _blank)中检测功能

根据我的研究:

  • "WebView"可以禁用"在新窗口/选项卡中打开链接".
  • 本机应用程序开发人员使用WebView在其应用程序中显示网页(请参阅Twitter的应用程序).
  • 通过用户代理检测WebView不能始终如一地工作,无论如何都不是最佳实践.
  • 只需尝试使用JS打开一个新窗口就会触发弹出窗口阻止程序; 使它成为一种不可靠的方法来测试是否可以打开一个新窗口.

我需要检测此功能何时不可用.不可能?

附加说明

我正在尝试检测是否可以通过target = _blank打开一个新窗口.例如,UIWebView [应用内浏览器]可以阻止target = _blank按预期工作[它只是在同一个窗口而不是新窗口中打开].我需要一个解决方案来指示由于浏览器限制而无法打开新窗口,例如在UIWebView案例中.不幸的是,弹出窗口阻止程序阻止检查这样的功能,因为它们永远不允许打开新窗口而无需绕过用户输入(即点击).

javascript browser uiwebview webview feature-detection

15
推荐指数
2
解决办法
3306
查看次数