基于SIFT立体匹配
来源:互联网 发布:荷兰硕士留学费用知乎 编辑:程序博客网 时间:2024/04/29 02:19
视觉(13)基于SIFT立体匹配的移动机器人自定位
主要思路如下:
1.找特征:
对上一帧拍摄的左右图像分别计算SIFT特征,保存为L1.key,R1.key。
对当前帧拍摄的左右图像分别计算SIFT特征,保存为L2.key,R2.key。
2.特征匹配:
匹配L1.key,R1.key,得到文件K1.match。
匹配L2.key,R2.key,得到文件K2.match。
匹配K1.match,K2.match,得到result.txt,这个文件每一行包含了这四张图像的同一个特征点。
3.计算位姿的相对变换
现在1,2已经写好程序(一个简陋的命令行程序),一般能得到几百个匹配的特征,但是里面有一些特征匹配是错误的。
下一步可以考虑在计算3时采用RANSAC消除掉错误匹配的影响。
转换为pgm文件
找特征点
>siftWin32.exe 0<L1.pgm 1>L1.key
Finding keypoints
2473 keypoints found.
>siftWin32.exe 0<R1.pgm 1>R1.key
Finding keypoints
2945 keypoints found.
>siftWin32.exe 0<L2.pgm 1>L2.key
Finding keypoints
2712 keypoints found.
>siftWin32.exe 0<R2.pgm 1>R2.key
Finding keypoints
3536 keypoints found.
匹配并显示(1)
>match -m1 L1.key R1.key k1.match
k1:2473,k2:2945
Found 928 matches.
>match -draw k1.match L1.pgm R1.pgm
klist:928
匹配并显示(1)
>match -m1 L2.key R2.key k2.match
k1:2712,k2:3536
Found 1032 matches.
>match -draw k2.match L2.pgm R2.pgm
klist:1032
匹配(2)
>match -m2 k1.match k2.match result.txt
k1:928,k2:1032
find 573 matches
找特征点
>siftWin32.exe 0<L1.pgm 1>L1.key
Finding keypoints
2473 keypoints found.
>siftWin32.exe 0<R1.pgm 1>R1.key
Finding keypoints
2945 keypoints found.
>siftWin32.exe 0<L2.pgm 1>L2.key
Finding keypoints
2712 keypoints found.
>siftWin32.exe 0<R2.pgm 1>R2.key
Finding keypoints
3536 keypoints found.
匹配并显示(1)
>match -m1 L1.key R1.key k1.match
k1:2473,k2:2945
Found 928 matches.
>match -draw k1.match L1.pgm R1.pgm
klist:928
匹配并显示(1)
>match -m1 L2.key R2.key k2.match
k1:2712,k2:3536
Found 1032 matches.
>match -draw k2.match L2.pgm R2.pgm
klist:1032
匹配(2)
>match -m2 k1.match k2.match result.txt
k1:928,k2:1032
find 573 matches
转自:http://www.cnblogs.com/cutepig/archive/2007/07/18/822997.html
- 基于SIFT立体匹配
- 基于图像分割的立体匹配方法
- 基于图像分割的立体匹配方法
- 立体匹配
- 立体匹配
- 立体匹配
- 立体匹配---立体匹配过程
- 基于最小生成树的实时立体匹配算法简介
- 基于最小生成树的实时立体匹配算法简介
- 基于Opencv的几种立体匹配算法+ELAS
- 基于图论的立体匹配方法研究----绪论
- 基于Opencv的SIFT代码,使用FLANN匹配
- 基于 Sift + Kmeans + 倒排索引 的图像匹配
- 立体匹配---立体匹配算法最新动态
- 立体匹配算法_RankTransform
- 立体匹配算法_RankTransform .
- 立体匹配算法介绍
- Halcon:立体匹配
- Web开发基础--一些基本概念
- qt配置vs2005的方法
- java中静态代码块的用法 static用法详解
- 第三章 信道 ICommunicationObject
- CGAL3.3安装过程介绍
- 基于SIFT立体匹配
- OpenCASCADE 你让我情何以堪
- GetMemory错误讲解(指针练习)
- Ajax 异步请求 包含中文时乱码处理
- .NET命名空间
- 线程池的原理和连接池的原理
- 如何使用CodeSmith批量生成代码(原创)
- VC中使用ATL编写控件
- 软件MD5