VS2010 + win7 + Hugin编译、调试经验

时间:2022-07-21 14:57:13

      hugin 是一款由 Pablo d'Angelo 为主开发的跨平台开源全景摄影图像拼接软件。它是基于Helmut Dersch's Panorama Tools与Andrew Mihal的EnblendEnfuse的一款图形化界面的前端程序。拼接允许几张在同一地点拍摄的互有重叠的照片使用 控制点来拼合照片以混合而输出一张更大幅面的图像。hugin支持自动创建控制点,带预览窗口的优化图像投影方式方便用户全景图是否可接受。若用户接受,则程序通过拼接投影与输出全景图。    


    本文参考如下文章:http://wenku.baidu.com/view/f426980b79563c1ec5da719b.html 

                                        http://hi.baidu.com/dean_wang/item/01954b18879a13476926bb90

    感觉上面的文章都很有用,尤其是http://wenku.baidu.com/view/f426980b79563c1ec5da719b.html ,上面的步骤很有帮助,免去了很多不必要的麻烦。

    由于本人一直在使用VS2010,所以不愿意因为编译Hugin而再安装一个VS2008(虽然说VS2008的教程以及SDK比较方便。。。所以,如果大家不像我这么懒的话,还是希望大家尽量用Hugin提供的SDK:http://wiki.panotools.org/Build_Hugin_for_Windows_with_SDK还有就是一些官网上关于SDK的编译帮助说明:http://wiki.panotools.org/Build_Hugin_for_Windows_with_SDK)

    接下来还是说一下我的编译过程吧,首先,按照http://wenku.baidu.com/view/f426980b79563c1ec5da719b.html 上面的说明,利用VS2010对每一个依赖库都重新生成(主要是为了避免不必要的麻烦~其实VS2008编译的库VS2010使用起来大多数是可以正常使用的),由于下载的Hugin源代码比较新(2012年12月25日下载的~),利用Cmake2.8.1生成解决方案的时候发现还需要glib-2.28.1,所以在网上下载了glib-2.28.1之后,在glib-2.28.1\build\win32\vs9目录下,利用VS2010重新编译生成glib-2.0.lib,这个过程没有什么困难。之后Cmake一下,发现还需要依赖lensfun-0.2.6,下载lensfun,发现lensfun也需要依赖glib,经过编译后生成了lensfun.lib以及tre_regex.lib,将这些库的地址分别加入到Cmake中。Confugure一下,成功,Generate一下,生成了sln的解决方案。

    接下来的编译过程比较艰苦,因为会遇到很多的问题,这些问题主要是与自己Cmake的地址设置有关,而且新的Hugin依赖的wxWidgets为2.9之后的版本,所以,之前的2.8版本已经不能用了,下载新版本并生成相应的lib(有很多,Debug和Release的都需要)之后,重新利用Cmake Confugure一下,之后再Generate一下。成功生成sln之后,编译还是会有一些小问题,随便在网上找一些解决办法就能解决的!祝大家编译顺利!这个东西我足足编译了两整天~只能说自己水平太洼。。。对Cmake也不太熟悉,这回编译Hugin的程序,总体感觉很有收获。