擅长:python、mysql、java
<p>我也犯了同样的错误。但在我的例子中,这是因为我在使用SIFT和<code>cv2.NORM_HAMMING</code>度量。将度量更改为<code>cv2.NORM_L1</code>解决了这个问题。</p>
<p>引用<a href="https://docs.opencv.org/2.4/modules/features2d/doc/common_interfaces_of_descriptor_matchers.html#bfmatcher-bfmatcher" rel="nofollow noreferrer">BFMatcher</a>的文档:</p>
<blockquote>
<p><code>normType</code> – One of <code>NORM_L1</code>, <code>NORM_L2</code>, <code>NORM_HAMMING</code>, <code>NORM_HAMMING2</code>. <code>L1</code>
and <code>L2</code> norms are preferable choices for SIFT and SURF descriptors,
<code>NORM_HAMMING</code> should be used with ORB, BRISK and BRIEF, <code>NORM_HAMMING2</code>
should be used with ORB when <code>WTA_K==3</code> or <code>4</code> (see <code>ORB::ORB</code> constructor
description). </p>
</blockquote>