匹配得分的计算问题
float score = (score_int * 100.f) / (4 * numFeatures); 为什么在计算分数的时候, 除数要乘以4?
因为单点得分最高为4,需要*100 / 4 缩放到100
@meiqua 大神,相似度计算这块发现在图片模糊等情况下可能会出现match到的目标是准的,但是score很低(三十几)。造成一个问题是如果需要能match到这个目标需要把min_score设置的较低。而如果在清晰度高的情况下min_score设的低的话需要matchClass耗时则会很高。所以如果可以将定位OK的score分布在80以上的话会是非常棒的效果。
模糊的话可以调整检测时edge阈值(第4个参数),一般不建议把分数调得很低。可以参考这个例子。
模糊的话可以调整检测时edge阈值(第4个参数),一般不建议把分数调得很低。可以参考这个例子。
实际上我使用的master的match方式,master分支的match应该没有使用canny。
这是测试图片,score为48,但定位效果是ok的。

这是测试图片的数据 链接:https://pan.baidu.com/s/1q0NNkIShfj_Qi2UkBk1dxg 提取码:c5mt
master的match里用的sobel计算梯度,我把sobel的ksize调大就解决了评分过低的问题。感谢作者提醒。