zoukankan      html  css  js  c++  java
  • sift实现的双目测距

    最近一直在做双目测距的工作,今天终于获得一定的成果~拿出来与大家分享~

    一、源码下载:http://download.csdn.net/detail/renshengrumenglibing/3791149

     二、硬件:

    三、匹配效果:


    四、基本算法 参见学习opencv中关于双目测距的算法

    最关键的Z = fx*T/(x2 - x1)


    五、基本参数:

    摄像头间距:T = 187mm
    由于在实际测量过程中,发现摄像机的焦距并非固定不变的,在标定

    的时候会发现,随着距离的变大,测量的焦距逐渐变大,于是采用测量多



    组的的数据拟合 出摄像头的焦距公式
    求取焦距与实际距离的拟合公式:fx = g(distance)
    实际距离 像差 反推的焦距 
    413 398 879
    519 321 890.9
    618 279 922
    727 245 952.5
    835 217 969.0
    930 200 994.65
    1075 179 1029
    1211 187 1068.5
    1345 152 1093
    1496 142 1136


    焦距拟合公式(matlab计算)
    fx*T = k*dis +b
    k  = 44.97
    b = 14454.17732 
    T为两个摄像头间的距离,为定值187mm。
    知道焦距的拟合公式以后,再测出两张照片的匹配点的像差,可以测出


    距离
    由方程组:
    fx * T = k*dis +b
    Z = fx*T/(x2 - x1)
    x2 - x1 为两张照片的匹配点的像差
    Z该匹配点的实际距离。




    得出距离测量公式Z = b/(x2 -x1 - k)


    六、实际测量值比较:

    重现拍摄几组图片,求取实际距离
    下面给出求解结果以及误差分析:单位mm
    实际距离 测量距离 误差
    1472 1460 -12
    1059 1054 -5
    921 920.48 -0.52
    804 798.4 -5.6
    644 642.3 -1.7
    516 510.69 -5.31
    源码下载网址:
    http://download.csdn.net/detail/renshengrumenglibing/3791149







  • 相关阅读:
    Maven ==> 简介
    IDEA结合GIT的使用
    Shell ==> 基础
    Dubbo ==> 简介
    iptables防火墙
    文件系统对比
    supervisord部署
    inotify+rsync安装配置
    前端插件网址
    Nginx高级玩法
  • 原文地址:https://www.cnblogs.com/libing64/p/2878749.html
Copyright © 2011-2022 走看看