• 视觉(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
  • 相关阅读:
    eclipse如何运行maven项目
    node.js的ejs模版引擎
    java中?和A、B、T、E、K、V的区别
    public static <T> Map<String, T> json2map
    Session深入理解
    maven指定构建的编码格式
    Effective java-泛型思维导图
    Effective java-枚举和注解思维导图
    java编程思想-泛型思维导图
    java编程思想-枚举类型思维导图
  • 原文地址:https://www.cnblogs.com/cutepig/p/822997.html
Copyright © 2020-2023  润新知