• SfM执行流程


    整个过程根据脚本执行过程来分析。

    首先我们看到RunBundler.sh,这个shell脚本。

    1、定义参数

    BASE_PATH="/cygdrive/e/ProjectBefore/LearnCUDA/bundler_sfm-master";
    
    if [ $BASE_PATH == "TODO" ]
    then
        echo "Please modify this script (RunBundler.sh) with the base path of your bundler installation.";
        exit;
    fi
    
    EXTRACT_FOCAL=$BASE_PATH/bin/extract_focal.pl
    
    OS=`uname -o`
    
    if [ $OS == "Cygwin" ]
    then
        MATCHKEYS=$BASE_PATH/bin/KeyMatchFull.exe
        BUNDLER=$BASE_PATH/bin/Bundler.exe
    else
        MATCHKEYS=$BASE_PATH/bin/KeyMatchFull
        BUNDLER=$BASE_PATH/bin/bundler
    fi
    
    TO_SIFT=$BASE_PATH/bin/ToSift.sh
    
    IMAGE_DIR="."

    2、Rename ".JPG" to ".jpg"

    用到了正则表达式egrep跟替换sed

    3、Create the list of images

    这样这个就执行到了perl脚本,脚本中给出了常见相机的ccd尺寸。

    这个ccd的尺寸也就是感光器件的面积大小。目前主要尺寸有2/3英寸、1/1.8英寸、1/2.7英寸、1/3.2英寸等

    举一个例子,标称1/2.7英寸的感光器件,实际上是把感光器件的全部面积(包括有效和无效的部分),连同其固定支架、电子快门、辅助输出接口等等一股脑都“用一个圆包起来”,这个
    圆的直径才是1/2.7英寸,即9.407mm! 而实际参与成像的“CCD感光区”尺寸,只有5.27mm×3.96mm!

    其它常见的小CCD实际尺寸如下:     1/2.5英寸:5.38x4.39mm;     1/1.8英寸:7.178x5.319mm;     2/3英寸:8.8x6.6mm;

    作者将ccd的尺寸转换成了CCD的感光区域的宽。如果相机的中心点在感光区域的中心的话,这样我们就可以得到相机的内参的中心点。

    然后通过jhead来获取照片的exif信息,如下:

    image

    另外并不是所有的相机照片都会有上述信息,如下:

    image

    这个脚本的目的也就是为了获得可以通过jhead获得的相机参数

    4、接下来在看RunBundler.sh,就是特征提取执行ToSift.sh脚本

    Run the ToSift script to generate a list of SIFT commands

    5、Execute the SIFT commands

    sift使用了siftWin32.exe

    6、Match images (can take a while)

    7、Generate the options file for running bundler

    8、Run Bundler

    主要流程如上,对于下面重点分析Run Bundler。

     
  • 相关阅读:
    算法沉思录之算法的结构
    OSSpinLockLock加锁机制,保证线程安全并且性能高
    iOS 开源库系列 Aspects核心源码分析---面向切面编程之疯狂的 Aspects
    代码阅读沉思录:代码的灵、肉与骨
    iOS AOP框架Aspects实现原理
    最近还是太浮躁了,一周阅读一个开源库是值得的
    performSelector 多参调用的实现方案
    oc消息转发:forwardInvocation、签名、参量个数、SEL 相关测试
    isa class superclass metaclass
    ARC与Toll-Free Bridging
  • 原文地址:https://www.cnblogs.com/fengbing/p/3596182.html
Copyright © 2020-2023  润新知