OpenCV之特征点匹配

特征点选取

特征点探测方法有goodFeaturesToTrack(),cornerHarris()和SURF()。一般使用goodFeaturesToTrack()就能获得很好的特征点。goodFeaturesToTrack()定义:

复制代码
void goodFeaturesToTrack( InputArray image, 
                          OutputArray corners,
                          int maxCorners, 
                          double qualityLevel, 
                          double minDistance,
                          InputArray mask = noArray(), 
                          int blockSize = 3,
                          bool useHarrisDetector = false, 
                          double k = 0.04 );

image:源图像;

corners:检测到的特征点位置;

maxcorner:为返回的特征点个数设置上限。

qualityLevel:反映出一个角形特征在它之前的强度,设置较低的值会返回更多的点;

minDistance:特征点之间的最小距离;

mask:如果mask(i,j)=0,那么不考虑像素p(i,j);

blockSize:一个用于计算的像素周围的大小

useHarrisDetector:是否使用原来的哈里斯角探测器或一个最小特征值准则。

k:哈里斯角探测器的一个自由参数。

特征点跟踪

特征点跟踪使用光流算法:利用OpenCV光流算法实现视频特征点跟踪_视图猿人的博客-CSDN博客

为了进一步提高跟踪的准确度,采用正向和反向两次光流跟踪:

对于特征点P(i,j),其正向光流算法计算出的位置为D(x,y);

对D(x,y)点再次使用光流算法,得到位置Q(m,n);

如果P==Q,也就是两个位置相同,那么就留下特征点P

相关推荐
love530love9 分钟前
ComfyUI rgthree-comfy Image Comparer 节点无输出问题排查与解决
人工智能·windows·python·comfyui·rgthree-comfy·nodes 2.0·vue 节点
新缸中之脑21 分钟前
应该使用AI构建内部工具吗?
人工智能
badhope25 分钟前
Docker从零开始安装配置全攻略
运维·人工智能·vscode·python·docker·容器·github
AI攻城狮35 分钟前
lossless-claw vs mem0:别再把上下文管理和长期记忆混为一谈
人工智能·云原生·aigc
qq_3495232639 分钟前
OpenClaw 架构全解析:本地优先的开源 AI Agent 框架
人工智能·架构·开源
寻见90341 分钟前
智能体开发_07Function Calling道法术器拆解,一文搞懂大模型如何“做事”
人工智能·后端·ai编程
未来之窗软件服务42 分钟前
vosk-ASR asterisk调用[AI人工智能(五十三)]—东方仙盟
人工智能·语音识别·vosk·仙盟创梦ide·东方仙盟
橘bird43 分钟前
Transformer 简介
人工智能·深度学习·transformer
阴阳怪气乌托邦1 小时前
请注意!AI低代码正在干掉传统开发
人工智能·低代码·工作流引擎
KG_LLM图谱增强大模型1 小时前
Palantir官方揭秘AIP:企业级人工智能平台的端到端架构
大数据·人工智能