通过降维加速opencv中的knnMatch图像匹配

本文探讨了如何利用PCA和SVD降维技术来加速OpenCV中的knnMatch图像匹配过程。通过PCA和SVD对SIFT特征进行降维,减少了计算量,同时保持了匹配的准确性。实验表明,降维到32维后,计算时间减少了一半,但结果的准确性只下降了1~2%。
摘要由CSDN通过智能技术生成

问题描述:opencv中knnMatch是一种蛮力匹配,基本原理是将待匹配图片的sift等特征与目标图片中的全部sift特征一对n的全量便利,找出相似度最高的前k个。当待匹配的图片增多时,需要的计算量太大,所以考虑是否可以通过降维的方式减少计算过程中的时间花费。

1. PCA降维

从物理的角度来说,所有的数据都可以看作物体(object)在选定特征(坐标轴)上的投影,而这个数值的大小代表这个object在这个特征上的表现力(强度)。为了尽可能详细的去表达一个或者一类object,有时候选取的特征会过多,就造成了数据冗余,而这些冗余的数据对于计算来说花费是十分昂贵的。所以涌现了诸如PCA,LDA,FA等降维的方式。PCA算法相当于对数据做了一次整体的分析,找出最能代表这些数据的特征(这些特征不一定是原始选定的特征,而因子分子FA则是在原有的特征中找出特征投影交大的一部分特征),并用这些特征去表示原始数据。用投影的理论来说,所有的物体不再向原来表示特征的坐标轴去投影,而是改为向新的特征对应的坐标轴去投影。

2. SVD实现降维

经典的SVD公式:

M=UΣVT
假设 MRm×n,URm×k,ΣR
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值