windows10进行Colmap配置

2023-11-17

colmap下载:https://demuc.de/colmap/

新的colmap按照官网的编译方式仅需要预装好CMake,Boost,QT5,CUDA和CGAL。

1.CMake

CMake安装最简单,去官网下载好压缩包解压即可。建议下载新版。

下载链接:https://cmake.org/download/

解压后将bin目录添加到环境变量Path中。如图:

2.Boost

下载链接:https://sourceforge.net/projects/boost/files/boost-binaries/

建议下载预编译版本,选择自己对应编译器和操作系统位数的版本。我之前选择的源码编译不知道为什么编译出来都是32位,COLMAP无法使用。索性就用预编译版本了。我下载的是1.66版,VS2015编译的64位。对应的名称是:boost_1_66_0-msvc-14.0-64.exe。

下载以后双击运行解压到一个文件夹下就好,这里我默认解压到了C盘。其中一定要有对应版本的lib库:

 

并添加环境变量:

3.QT5

下载链接:https://www.qt.io/download

QT免费版在你填写个人信息以后会邮件联系你就可以下载了,也可以去拷贝别人的安装包。我拷贝的同学的在线安装包,安装时仅选择安装了QT5.11.2的64位版本。编译器仍然配合的VS2015。

4.CUDA

安装CUDA的教程很多,这里不再赘述。我安装的是CUDA9.1,配合的GTX 1060.当然,COLMAP的CUDA按照官网的说法是可选择的安装。

5.CGAL

这是一个计算机几何算法库。下载链接:https://www.cgal.org/download/windows.html

上述链接包括了CGAL的下载及安装方法,我下载的是CGAL4.13的exe安装程序,解压到指定目录后并没有结束,一定要记得用CMake编译一遍,会在解压目录出现build文件夹,并添加环境变量。官网操作截图如下:

上述依赖安装完毕后就可以开始编译colmap了。

编译前检查一下环境变量是否都有了:

colmap下载链接:https://github.com/colmap/colmap

这里我下载编译的是dev版本。下载完是一个压缩包,解压到自己想放的文件目录即可。

编译推荐官网的python脚本编译方式,因为这种编译方式会帮你自动下载需要的依赖库,比自己用CMake方便很多。

具体的操作方式。

1.安装python

下载链接:https://www.python.org/downloads/

我下载的是3.6.6版本。安装过程简单,和CMake相同,最好在安装完成以后打开cmd窗口,输入python,看看有没有输出

这样判断是否能够正常使用。

基本工作完成以后,就按照官网的python脚本指令操作即可。

具体:

打开cmd指令窗口,输入:

python D:\colmapcode\colmap-dev\scripts\python\build.py --build_path D:\colmapcode\colmap-dev\build --colmap_path D:\colmapcode\colmap-dev --boost_path "C:/local/boost_1_66_0/lib64-msvc-14.0"  --qt_path "C:\Qt\5.11.2\msvc2015_64" --cuda_path "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.1" --cgal_path "F:\CGAL4.13"

注意,上述代码中的路径都是我的文件路径,一定要改成自己安装各个文件时的对应路径。

运行即可,可能会遇到一些小问题,比如我编译的时候遇到正反斜杠的问题,没明白什么原因,CUDA路径要用反斜杠,用正斜杠就会找不到。

编译过程中网络状况要良好,他会自行下载一些依赖库:

编译完成后,会在源代码文件目录下生成build文件:

打开COLMAP.sln即可。

注意将colmap.exe 设置为启动项,遇到
错误    C1128    节数超过对象文件格式限制: 请使用 /bigobj 进行编译    colmap    D:\colmapcode\colmap-dev\src\feature\matching.cc    1    

在对应报错的cc文件的上级目录右键

选择属性,C/C++选项,选择命令行,下方输入/bigobj。应用确定即可。

 

运行还遇到了找不到dll的问题以及只有黑框没有界面,这里附上需要改动的配置截图.

这里将colmap.exe设置为启动项。

然后如果找不到某些dll或者lib库,直接添加进D:\colmapcode\colmap-dev\build\__install__\lib。这是我的路径。或者更改

配置:

选择colmap_exe属性.

命令参数gui和环境配置好以后就可以出现带有界面的colmap了。至此,大功告成。

转载请注明出处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

windows10进行Colmap配置 的相关文章

  • python闯红灯检测斑马线检测红绿灯检测车速检测车流量统计车牌识别智慧交通系统

    本项目是使用pytorch作为深度学习框架的智能交通检测系统 可以识别并处理路口交通状况 目前完成的功能有 车辆 行人 摩托车 斑马线检测识别 红绿灯检测识别 车辆跟踪 车速判断 超速行为识别 交通拥堵状况识别 车流量统计 车牌检测识别 行
  • linemod算法过程理解

    一 提取模板 1 预处理 使用高斯模糊预处理将要作为模板的RGB图 2 模板梯度计算 分别计算RGB三个通道中每个像素点x和y方向的梯度 sobel算子 取幅值最大的作为该像素的梯度 若梯度幅度值小于阈值 则被舍弃 3 梯度离散化及量化 对
  • 用Caffe提取深度特征

    用Caffe提取深度特征 发表于 2015 05 28 1条评论 最近做对比实验 要比较非深度的方法加上deep feature之后的效果 于是就用Caffe提了一把特征 过程不困难但是有点繁琐 姑且记录下来 留个参考 准备工作 用Caff
  • [Transformer]CSWin Transformer: A General Vision Transformer Backbone with Cross-Shaped Windows

    CSWin Transformer 基于交叉十字形窗口的视觉Transformer框架 Abstract Section I Introduction Section II Related Work Section III Method P
  • Dilated Convolution介绍

    Dilated Convolution介绍 相关的两篇论文分别是 ICLR2016 MULTI SCALE CONTEXT AGGREGATION BY DILATED CONVOLUTIONS 和 CVPR2017 Dilated Res
  • Kalman滤波——初阶入门

    概要 kalman滤波在机器人控制 数字图像等领域应用非常广泛的一种方法 很多人对其名字不能理解 因为kalman滤波在大多数时候表现出来都是将多个数据进行融合 为什么不叫kalman融合呢 如果你有这个疑问 那就说明你对kalman滤波理
  • 论文阅读(21 CVPR):Adaptive Cross-Modal Prototypes for Cross-Domain Visual-Language Retrieval

    跨域 跨模态检索 Setting Unsupervised Domain Adaptation UDA sampled from joint distributions P v s s and Q v t t 在一个联合分布上进行采样 并非
  • 论文阅读:CLIP2Video: Mastering Video-Text Retrieval via Image CLIP

    动机 之前的大多都是试图从大规模的视频文本数据集中提取视频的时空特征以及视频和语言之间的多模式交互 作者将在图像语言中预训练的模型迁移到视频文本检索任务中 而之前这种使用这种方式的工作大多都是基于证明这种迁移学习是有效的 以验证CLIP模型
  • 教你用OpenCV 和 Python实现圆物检测

    点击上方 码农的后花园 选择 星标 公众号 精选文章 第一时间送达 基于python使用OpenCV实现在一张图片中检测出圆形 并且根据圆检测结果信息 绘制 标记出圆的边界和圆心 1 HoughCircles 霍夫圆检测函数 在Opencv
  • Vulkan 与 OpenGL 对比

    Vulkan 与 OpenGL 对比 Vulkan与OpenGL相比 可以更详细的向显卡描述你的应用程序打算做什么 从而可以获得更好的性能和更小的驱动开销 Vulkan的设计理念与Direct3D 12和Metal基本类似 但Vulkan作
  • CV代码细节总结(一)

    提示 CV代码细节总结一 目录 前言 一 Python skimage PIL openCV读取的默认格式和通道顺序 二 Python PIL Image获取图像像素时 图像的原点及x y的方向 三 np linalg norm 用法 四
  • 【StyleGAN论文精读CVPR_2019】A Style-Based Generator Architecture for Generative Adversarial Networks

    StyleGAN论文精读CVPR 2019 A Style Based Generator Architecture for Generative Adversarial Networks 一 前言 Abstract 1 Introduct
  • 计算机视觉---常见的颜色空间

    RGB 最常见的面向硬件设备的彩色模型 它是人的视觉系统密切相连的模型 根据人眼结构 所有的颜色都可以看做是3种基本颜色 红r 绿g 蓝b的不同比例的组合 HSV HSV颜色空间是孟塞尔彩色空间的简化形式 是一种基于感知的颜色模型 它将彩色
  • CV01-语义分割笔记和两个模型VGG & ResNet的笔记

    目录 一 语义分割 二 VGG模型 2 1 VGG特征提取部分 2 2 VGG图像分类部分 三 ResNet模型 3 1 为什么是ResNet 3 2 1 1卷积调整channel维度大小 3 3 ResNet里的BottleNeck 3
  • 动手深度学习13:计算机视觉——语义分割、风格迁移

    文章目录 一 语义分割 1 1 语义分割简介 1 2 Pascal VOC2012 语义分割数据集 1 2 1下载 读取数据集 1 2 2 构建字典 RGB颜色值和类名互相映射 1 2 3 数据预处理 1 2 4 整合所有组件 读取Pasc
  • yolov4训练自己的数据模型

    看了下yolov4的作者给的操作说明 链接如下 https github com AlexeyAB darknet how to compile on linux using make 有兴趣的可以去看看 总结起来 跟yolov3的操作方式
  • python摔倒检测,跌倒检测openpose站立行为检测

    python摔倒检测 跌倒检测openpose站立行为检测 import cv2 import numpy as np from torch import from numpy jit from modules keypoints impo
  • pytorch 2.0初探:和pytorch 1.13的速度对比

    看到pytorch2 0出来了 而且宣传提速明显 一行代码即可提速43 左右 compiled model torch compile model We then measure speedups and validate accuracy
  • 多类别属性预测深度架构GlideNet

    将属性 如颜色 形状 状态 动作 附加到对象类别是一个重要的计算机视觉问题 属性预测最近取得了令人振奋的进展 通常被表述为一个多标签分类问题 然而 在以下方面仍然存在重大挑战 1 预测多个对象类别上的大量属性 2 建模属性的类别依赖性 3
  • ST-GCN的学习之路(一)论文分析

    目录 St GCN 2018AAAI Introduction Multiple modalities of human action The weakless of previous methods This work s advanta

随机推荐

  • 水球图 及各种参数设置

    水球图 Liquid Fill Chart 是Echarts的一个插件 在官方文档中没有 可以用来优雅的展示百分比数据 水球图 gif 安装 HTML中引入水球图
  • docker基础1——架构组成、安装配置

    文章目录 一 发展起源 1 1 传统虚拟化与容器虚拟化 1 2 docker底层核心技术 1 2 1 命名空间 1 2 2 控制组 1 3 docker工作方式 1 4 docker容器编排 1 5 docker优劣势 1 6 docker
  • iframe的替代品

    面试题 使用过iframe框架 那你对于iframe框架的优缺点知道多少 并且由于iframe的一些缺点 国内外针对这个框架的替代品你知道有哪些呢 知识点1 iframe框架的优缺点 优点 1 可以跨域请求其他网站 并将网站完整展示出来 2
  • [课程复习] 数据结构之线性表、树、图、查找、排序经典算法复习

    作者最近在复习考博 乘此机会分享一些计算机科学与技术 软件工程等相关专业课程考题 一方面分享给考研 考博 找工作的博友 另一方面也是自己今后完成这些课程的复习资料 同时也是在线笔记 基础知识 希望对您有所帮助 不喜勿喷 无知 乐观 低调 谦
  • 【Qt Modbus通信】QModbus实现modbus的主机功能 源码分享

    前言 modbus在上下位机数据交互时被广泛使用 因此写了这篇笔记和大家一起学习 Qt Modbus通信 libmodbus实现modbus的主机功能 从机功能 源码分享 之前使用libmodbus实现了modbus的主从功能 但发现主机查
  • docker frp 搭建内网穿透

    docker frp 搭建内网穿透 可运行的云服务器 docker pull snowdreamtech frps mkdir p root docker frp cd root docker frp touch frps ini comm
  • 企业微信如何简单实现定时发送文件到群:企业微信群机器人操作(Java代码实现)

    前言 不知道小伙伴们的公司组织架构通勤用的啥软件 我公司用的企业微信 然后业务销售部那边需要每天统计销售数据报表然后发在群里 我是开发 我不配在群里 知道这个背景以后 产品给我们的需求是 直接统计数据按照业务那边的报表模板直接生成销售报表
  • ARM-A架构入门基础(三)MMU

    14天学习训练营导师课程 周贺贺 ARMv8 ARMv9架构 快速入门 1 MMU Memory Management Unit 内存管理单元 MMU的意义在于将软件程序的虚拟地址转换为真实的物理地址 2 MMU种类 Secure EL1
  • 数据结构——图解循环队列长度计算问题

    队列定义是这样的 define MAXSIZE 10 typedef struct ElemType data MAXSIZE int front rear SeqQueue 一个队列 一个存放元素的数组 一个队头指针 一个队尾指针 fro
  • np.array与list的内存大小比较

    1 np array与list 比较 a 1 2 3 4 需要4个指针和四个数据 增加了存储和消耗cpu a np array 1 2 3 4 只需要存放四个数据 读取和计算更加方便 2 np array与list所占内存 def test
  • sqlserver语言转mysql_SQLSERVER 脚本转MYSQL 脚本的方法总结

    标签 1 MYSQL中SQL脚步都要以分号 结尾 这点比SQLSERVER要严谨 2 所有关键字都要加上 比如 Status 替换成 Status 按是有个 的键 3 SQLSERVER的dbo 在mysql中不支持 都要去掉 4 isnu
  • java field static_Java基础之关键字static

    static是Java中的一个关键字 用来修饰成员变量与成员方法 还可以用于编写静态代码块 对于被static修饰的东西 JVM在加载类的时候 就给这些变量在内存中分配了一定的空间 即在编译阶段时就为这些成员变量的实例分配了空间 一 静态变
  • 机器学习入门之流浪地球

    机器学习入门之流浪地球 1 引言 2 问题描述 3 问题分析 4 问题求解 4 1 数据集 4 2 模型构造 4 3 损失函数 4 4 梯度下降 4 5 模型训练 4 6 预测 4 7 完整实现代码 5 总结与思考 1 引言 我国里程碑式科
  • 求n边形周长的k等分点坐标(今日头条)

    题目 本题来自今天头条的笔试 有一个n边形 P0 P1 Pn 每一条边皆为垂直或水平线段 现给定数值k 以P0为起点将n边形的周长分为k段 每段的长度相等 请打印出k等分点的坐标 T0 T1 Tk 的坐标 分析 1 可以计算出从第0个点 到
  • 线程池ExecutorService

    1 线程池创建方式 1 通过Executors创建线程池 import java util concurrent ExecutorService import java util concurrent Executors public cl
  • Ubuntu18.04未安装Qt报qt.qpa.plugin could not load the Qt platform plugin xcb问题的解决方法

    在Ubuntu 18 04开发机上安装了Qt 5 14 2 当将其可执行程序拷贝到另一台未安装Qt的Ubuntu 18 04上报错 拷贝可执行程序前 使用ldd将此执行程序依赖的动态库也一起拷贝过去 包括Qt5 14 2 5 14 2 gc
  • JS ES6 单链表2种插入尾部方式

    一种是类里加一个指向尾部最后一个元素指针 通过他添加一个元素到队列最后 一种是每次增一个元素都从头开始遍历直到最后一个 然后添加 打开出来有单链表结构是一样的 除了上面的 多了一个队尾指针 class Node 单个结点 data next
  • Cadence 生成gerber文件,嘉立创下单助手解析不了PCB板的问题

    概述 最近由于公司的原因 使用Cadence EDA工具绘制一块 TMC2300电机驱动板 遇到一些问题 在这记录一下坑 也方便遇到这个问题的硬件攻城狮得到解决 1 EDA Cadence 17 4 在生成gerber文件时 使用CAM35
  • type_traits技术与C++

    引言 一个方法实现过程中 业务逻辑很多都是相似的 但是与具体的特化类型的不同有一定的差异 这个时候可以采用特化模板的方式实现 不同的类型使用不同的特化实现 但是这种情况造成一定的业务逻辑的冗余 而trait技术可以将特化类型通过封装 以一个
  • windows10进行Colmap配置

    colmap下载 https demuc de colmap 新的colmap按照官网的编译方式仅需要预装好CMake Boost QT5 CUDA和CGAL 1 CMake CMake安装最简单 去官网下载好压缩包解压即可 建议下载新版