全景图拼接Xpano项目的Windows开发环境搭建
1、项目背景
项目需要进行图像拼接,因为有很多大神的开源项目,故不想重新造轮子,通过大量的检索拟使用Xpano开源项目作为基础,进行个性化的改造。
由于本人是初次接触c++,适合小白使用,若有描述不当之处,敬请各位大神指教。
2、Xpano项目地址及简介
Xpano是由Tomas Krupka开源的自动照片拼接工具。用户仅需导入需要拼接的图像目录,系统会自动识别有联系的影像,自动进行拼接,最后导出全景拼接图。
Xpano工具注重简单性和易用性,功能包括:
1、自动检测可拼接成全景图的图像组;
2、预览 + 缩放 + 平移计算的全景图;
3、裁剪模式、边界自动填充、可选投影类型;
4、导出全分辨率全景图(包括 exif 元数据)。
项目地址:
https://github.com/krupkat/xpano
国内下载(与Github中代码一致,有条件尽量下载Git中最新版):
Xpano 0.18.0
3、项目编译
3.1、克隆项目
git clone https://github.com/krupkat/xpano
3.2、构建编译环境
(1)打开VC2022,进入项目目录;
(2)打开xpano/main.cc文件,会发现编译失败,各类报错;
(3)打开工具/命令行/PowerShell,执行以下命令 。
注意:
1、在PowerShell中执行命令时,一定要在项目的根目录!!!否则命令会执行失败
2、执行命令前,提前挂好稳定的梯子!!!脚本中需要下载大量的github的项目并进行编译。
./misc/build/build-windows-latest.ps1
(4)PowerShell中显示下图,即表示环境已初步搭建完成。
(5)返回VC2022进行编译,出现以下界面,那么恭喜,环境搭建完成,可以进行二次开发了。
3.3、其他问题
本人在返回VC2022进行编译时,仍提示有find_package()的依赖问题,解决方案如下:
方案一:直接安装缺少的依赖库
1、定位出问题的依赖包,去github下载依赖库的源代码:
2、使用 CMake (cmake-gui) 软件将源码进行编译;
注意:第5步点完后需要等待一段时间,完成后再点“Generate”即可,如下图所示:
3、打开上图中第2步设置的build路径,找到.sln文件,使用VC2022打开。
4、进行依赖库的生成及安装。
至此,依赖库安装完毕。
方案二:将依赖库复制到单独目录引入项目
1、定位出问题的依赖包,去github下载依赖库的VC依赖包,如下图所示(SDL库);
2、将依赖包引入项目中:定位置缺少依赖的CMakeLists.txt,在find_package()之前加入如下代码:
set(CMAKE_PREFIX_PATH “你的依赖包路径”;)
注意:依赖包路径没有双引号;路径中需要使用\\;
示例:set(CMAKE_PREFIX_PATH D:\\lib;)
4、相关资源下载
Xpano-0.18.0源代码国内下载(与Github中代码一致,有条件尽量下载Git中最新版)
Xpano-0.18.0
本人遇到问题后,使用的依赖库:
OpenCV-4.9.0
SDL2-2.28.5
spdlog