COLMAP 【Feature matching】特征匹配参数解释

2024-03-30 05:52

本文主要是介绍COLMAP 【Feature matching】特征匹配参数解释,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(Windows)Colmap 具体使用教程可参考我的这篇博文

windows+colmap实现SFM三维重建位姿估计-CSDN博客

下面只是matching参数解释

Matching这个阶段很重要,匹配方式不同会对最终结果影响很大,要根据实际情况选择合适的匹配方式。下面是各个参数的详细解释。

1.Exhaustive——官方文档中说明Exhaustive耗时最长,因为所有图像都会两两匹配,但理论上效果最好。但在实际操作过程中发现很多时候这种方式耗时长而且效果也不好,尤其是当场景很相似时会集中在一团,例如建筑的四个面都很像,这时匹配后会认为只拍到了一个面,其他三面都重建不出来。
2.Sequential——这种方式我使用了挺长时间,因为一般去采集图像时,都是按时序去采集,甚至直接从视频提取帧(ffmpeg很好用!),因此使用这种匹配方式,选择相邻x张图像匹配,往往效果会比较好,像上面的问题就不会遇到。但是它也会有其他的问题,比如在拍摄开始和拍摄结束,都拍摄的同一个物体,但由于误差累计,可能会重建出两个一模一样的(只是会有些偏差)。
3.Spatial——这种方式是利用了地理位置信息,也就是每张图像必须自带位置信息,例如gps。这种方式需要设置在多大范围内进行匹配,因此需要事先知道大概重建场景大小,以便选择合适参数。
4.Custom——这种就是自定义。一开始我觉得这种方式很傻,不智能,所以从没用过。但是在试了前面几种方法,效果还是不理想,怀疑人生的时候,我发现可以自己去定义哪几张图像匹配哪几张不匹配,最后简直有奇效!!!所以这种方式适合很清楚自己的数据是怎么来的,有一定先验后去制定匹配方式。总之这几种方式都各有优劣,按照实际情况选择就行。
5.Hierachical——这好像是只有命令行才有的匹配方式,图形界面还没有加上去。这是针对大场景,图像数量很多时,会自动分成几个部分并行计算,最后拼在一起。然而试了下貌似效果并不是很理想,github上也说会在后续改进,目前只是一个初步的功能。

这篇关于COLMAP 【Feature matching】特征匹配参数解释的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/860651

相关文章

python中的显式声明类型参数使用方式

《python中的显式声明类型参数使用方式》文章探讨了Python3.10+版本中类型注解的使用,指出FastAPI官方示例强调显式声明参数类型,通过|操作符替代Union/Optional,可提升代... 目录背景python函数显式声明的类型汇总基本类型集合类型Optional and Union(py

SpringBoot3匹配Mybatis3的错误与解决方案

《SpringBoot3匹配Mybatis3的错误与解决方案》文章指出SpringBoot3与MyBatis3兼容性问题,因未更新MyBatis-Plus依赖至SpringBoot3专用坐标,导致类冲... 目录SpringBoot3匹配MyBATis3的错误与解决mybatis在SpringBoot3如果

Go语言使用Gin处理路由参数和查询参数

《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java内存分配与JVM参数详解(推荐)

《Java内存分配与JVM参数详解(推荐)》本文详解JVM内存结构与参数调整,涵盖堆分代、元空间、GC选择及优化策略,帮助开发者提升性能、避免内存泄漏,本文给大家介绍Java内存分配与JVM参数详解,... 目录引言JVM内存结构JVM参数概述堆内存分配年轻代与老年代调整堆内存大小调整年轻代与老年代比例元空

HTML5 中的<button>标签用法和特征

《HTML5中的<button>标签用法和特征》在HTML5中,button标签用于定义一个可点击的按钮,它是创建交互式网页的重要元素之一,本文将深入解析HTML5中的button标签,详细介绍其属... 目录引言<button> 标签的基本用法<button> 标签的属性typevaluedisabled

一文详解PostgreSQL复制参数

《一文详解PostgreSQL复制参数》PostgreSQL作为一款功能强大的开源关系型数据库,其复制功能对于构建高可用性系统至关重要,本文给大家详细介绍了PostgreSQL的复制参数,需要的朋友可... 目录一、复制参数基础概念二、核心复制参数深度解析1. max_wal_seChina编程nders:WAL

Nginx路由匹配规则及优先级详解

《Nginx路由匹配规则及优先级详解》Nginx作为一个高性能的Web服务器和反向代理服务器,广泛用于负载均衡、请求转发等场景,在配置Nginx时,路由匹配规则是非常重要的概念,本文将详细介绍Ngin... 目录引言一、 Nginx的路由匹配规则概述二、 Nginx的路由匹配规则类型2.1 精确匹配(=)2

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与