问题标签 [template-matching]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
image-processing - 将多张图像对齐到一张图像中?
将可能具有不同旋转、曝光等但具有相同背景或其他固定参考的图像对齐在一起的好方法是什么?
Adobe Photoshop 可以通过其“Photomerge”功能做到这一点。
我怎样才能以编程方式做到这一点?是否有一个开源应用程序可以做到这一点?
algorithm - 模板匹配算法
请建议任何与大小和旋转无关的模板匹配算法。(如果可能,请提供任何源代码作为示例)
编辑1:其实我理解算法是如何工作的,我们可以调整模板大小并旋转它。它的计算成本很高,但我们可以使用图像金字塔。但现在对我来说真正的问题是当图片以某个角度拍摄时,只有透视变换才能校正图像。我的意思是,即使我们旋转或缩放图像,如果图像中的对象被透视变换,我们也不会得到很好的匹配。当然可以尝试从不同的角度生成许多模板,但我认为这是非常糟糕的主意。
EDIT 2: 使用基于形状匹配的模板匹配时的另一个问题。如果图像没有很多锐利边缘怎么办?例如盘子或盘子?
编辑3:我也听说过用于物体检测的相机校准。用于该目的的算法是什么?我不明白它如何用于模板匹配。
opencv - 每当我在 openCV 中使用 cvMatchTemplate 时,都会出现分段错误。为什么?
我正在尝试在 openCV 中进行简单的模板匹配,并且在我调用 cvMatchTemplate 的代码行中,出现分段错误。我不知道这是否相关,但我在使用 x11 的 Mac 上,我使用的是 opencv 2.0.0。
以下是相关代码:
IplImage* imgOriginal = cvLoadImage("reference.png", 0); IplImage* imgTemplate = cvLoadImage("template.png", 0);
IplImage* imgResult = cvCreateImage(cvSize(imgOriginal->width-imgTemplate->width+1, imgOriginal->height-imgTemplate->height+1), IPL_DEPTH_32F, 1); cvZero(imgResult);
cvMatchTemplate(imgOriginal,imgTemplate,imgResult,CV_TM_CCOEFF_NORMED);...
我从网上找到的一个非常好的教程中复制了这段代码,看起来事情应该可以解决,但我似乎无法理解。此外,cvMatchTemplate 中的最后一个参数可能会根据我们想要计算匹配的方式而有所不同,我已经尝试了所有这些参数,它们调用创建分段错误。
有没有人对如何解决这个问题有任何想法?提前非常感谢。
language-agnostic - 模板匹配参数的名称
在我的模板匹配代码中,我需要用户传递一个浮点参数,该参数指定算法是应该只关注最佳匹配(因此工作得更快)还是分析低概率区域(使其更慢)。
该参数是线性的并且是标准化的,因此可能的值在 <0, 1> 的范围内。随着参数的增长,结果匹配的数量是增加还是减少并不重要,因为这很容易改变。默认值在 0.5 左右;当值在范围的一端时,算法应该可能只返回一个匹配项(并且工作速度很快);而另一端应该意味着很多可能的匹配和较长的处理时间。
我应该为这个参数选择什么名称,以便对最终用户有意义?我一直在考虑 MatchingQuality 或 MatchingDepth 但似乎都不合适且不言自明。
search - 将特征与数据库匹配的快速(更)方式
我正在做一个项目,我在图像中有一个特征,描述为一组 X 和 Y 坐标(每个特征 5-10 点),这是该特征独有的。我还有一个包含数千个特征的数据库,每个特征都有相同类型的描述符。结果如下所示:
我想在 myDatabase 的特征中找到 myFeature 的最佳匹配。
匹配这些功能的最快方法是什么?目前我正在逐步检查数据库中的每个功能并比较每个单独的点:
这种搜索有效,但显然它在大型数据库上变得非常缓慢。有谁知道进行此类搜索的更快方法,或者至少是否有一种方法可以快速排除明显与描述符不匹配的特征?
xslt - 关于 XSL 模板匹配的基本问题
我刚刚开始修补 XML,我有一个问题。
XML 文件:
XSL 文件
我对 XSL 的第三行有疑问。如果我使用
<xsl:template match="bucket">
- Root Version 1A2B3C
被打印
<xsl:template match="/">
-
什么都没有打印 - 我认为"/"
意味着根。我的理解是它应该打印“1.0”(<?xml version
)或“Root Version 1A2B3C”(bucket version)
请让我知道为什么它不起作用。
谢谢
opencv - Open CV 中的二维子图像检测
从 OpenCV 用于以下问题的最明智的算法或算法组合是什么:
- 我有一组小的 2D 图像。我想在更大的图像中检测这些子图像的位置。
- 子图像通常约为 32x32 像素,较大的图像约为 400x400。
- 子图像并不总是方形的,并且包含 Alpha 通道。
- 可选 - 较大的图像可能是颗粒状的、压缩的、以 3D 形式旋转的或以其他方式略微扭曲的
我试过 cvMatchTemplate,结果很差(很难正确匹配,并且有大量误报,所有匹配方法)。一些问题来自 OpenCV 似乎无法处理 alpha 通道模板匹配这一事实。
我尝试过手动搜索,似乎效果更好,并且可以包含 alpha 通道,但速度很慢。
谢谢你的帮助。
image-processing - OpenCV 模板匹配和透明度
OpenCV 在模板匹配期间处理图像透明度的方式是什么?
问题是模板图像需要有透明部分,因为在原始图像中,这些地方可能有任何东西。
我尝试了所有方法,但都没有产生积极的结果(例如未正确检测到原始图像中模板的位置)。
opencv - 模板匹配 - 不同大小的模板和图像
我有一张图像,我可以获得更好的质量(例如更大的尺寸)。问题是我不能在默认大小上进行模板匹配,只能在更高的大小上进行。更高的不是固定的——它可以是原始图像的 1.0 到 2.5 倍。
我正在考虑以更高分辨率检索模板,然后根据图像的大小调整模板的大小。但是,当我使用不同的调整大小算法时,这可能会产生完全错误的结果。
你有什么建议?当我想在这种情况下进行模板匹配时,我应该如何进行?
编辑:请注意 - 模板将始终相同,并且它们在图像中的对应物也是如此(图像是计算机生成的)。
xslt - 基于属性合并节点对,模板匹配的新功能
假设我有以下 XML:
现在,考虑到每个标记的 for-each 循环效率很低而且是个坏主意,如何使用模板匹配将这个 xml 转换为以下内容?
我想要的<s>
只是“gID”,即与<tokens>
.
我对这种事情很模糊,所以非常感谢你的帮助!