什么是openCV features2D中的`query`和`train` [英] What is `query` and `train` in openCV features2D
问题描述
features2D
中的所有地方我看到的条件查询
和 train
。例如匹配
有 trainIdx
和 queryIdx
和 Matchers
有 train()
方法。
的英语中的 train
和查询
,但我不能理解此属性或方法的含义。 p>
PS
为了完成sansuiso的答案,我想知道这是一个非常愚蠢的问题,但也许是因为英语不是我的母语。我想,选择这些名称的原因应该是在某些应用程序,我们有一组图像(训练图像)事先,例如10个图像在您的办公室内拍摄。可以提取特征并且可以为这些图像计算特征描述符。在运行时,图像被给予系统以查询训练的数据库。因此,查询图像指的是该图像。我真的不喜欢他们命名这些参数的方式。如果你有一对立体图像,并且想要匹配的功能,这些名称没有意义,但你必须选择一个约定说总是调用左图像查询图像和右图像作为训练图像。我在计算机视觉上做了我的博士学位,并且在OpenCV中的一些命名约定似乎对我很迷惑/愚蠢。所以,如果你发现这些混乱或愚蠢,你不是孤单的。
Everywhere in features2D
classes I see terms query
and train
. For example matches
have trainIdx
and queryIdx
, and Matchers
have train()
method.
I know the definition of words train
and query
in English, but I can't understand the meaning of this properties or methods.
P.S. I understand, that it's very silly question, but maybe it's because English is not my native language.
To complete sansuiso's answer, I suppose the reason for choosing these names should be that in some application we have got a set of images (training images) beforehand, for example 10 images taken inside your office. The features can be extracted and the feature descriptors can be computed for these images. And at run-time an image is given to the system to query the trained database. Hence the query image refers to this image. I really don't like the way they have named these parameters. Where you have a pair of stereo images and you want to match the features, these names don't make sense but you have to chose a convention say always call the left image the query image and the right image as the training image. I did my PhD in computer vision and some naming conventions in OpenCV seem really confusing/silly to me. So if you find these confusing or silly you're not alone.
这篇关于什么是openCV features2D中的`query`和`train`的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!