复现NerfingMVS(更新中)

news2024/12/28 3:35:24

按以下代码一步步操作

conda create -n NerfingMVS python=3.7
conda activate NerfingMVS
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 -c pytorch
pip install -r requirements.txt

在这里插入图片描述
https://colmap.github.io/install.html

Linux 中

建议的依赖: CUDA(版本至少7.X)

依赖默认Ubuntu仓库:

sudo apt-get install \
    git \
    cmake \
    ninja-build \
    build-essential \
    libboost-program-options-dev \
    libboost-filesystem-dev \
    libboost-graph-dev \
    libboost-system-dev \
    libeigen3-dev \
    libflann-dev \
    libfreeimage-dev \
    libmetis-dev \
    libgoogle-glog-dev \
    libgtest-dev \
    libsqlite3-dev \
    libglew-dev \
    qtbase5-dev \
    libqt5opengl5-dev \
    libcgal-dev \
    libceres-dev

配置和编制COLMAP:

git clone https://github.com/colmap/colmap.git
cd colmap
mkdir build
cd build
cmake .. -GNinja
ninja
sudo ninja install

在cmake … -GNinja时出现报错

– Boost found.
– Found Boost components: filesystem;graph;program_options;system
– Found FreeImage
– Includes : /usr/include
– Libraries : /usr/lib/x86_64-linux-gnu/libfreeimage.so CMake Error at cmake/FindFreeImage.cmake:96 (target_include_directories): Cannot
specify include directories for imported target
“freeimage::FreeImage”. Call Stack (most recent call first):
cmake/FindDependencies.cmake:15 (find_package) CMakeLists.txt:96
(include)

CMake Error at cmake/FindFreeImage.cmake:98 (target_link_libraries):
Cannot specify link libraries for target “freeimage::FreeImage” which
is not built by this project. Call Stack (most recent call first):
cmake/FindDependencies.cmake:15 (find_package) CMakeLists.txt:96
(include)

– Configuring incomplete, errors occurred! See also “/home/uriky/桌面/NerfingMVS-main/colmap/build/CMakeFiles/CMakeOutput.log”.

尝试更新cmake看看能不能解决

https://github.com/Kitware/CMake/releases/进入下载cmake的安装包

cmake -version
which cmake
sudo ln -sf /home/uriky/cmake-3.29.3-linux-x86_64/bin/* /usr/bin/#将安装包解压之后设置软链接
cmake -version

在这里插入图片描述

重新运行一遍cmake … -GNinja刚刚的错误消失了,猜测可能是cmake的版本问题导致之前的错误,现在出现了新的错误

在这里插入图片描述

1、 CMake Error at cmake/FindLZ4.cmake:91 (message): Could not find LZ4
2、Call Stack (most recent call first): cmake/FindDependencies.cmake:18
3、(find_package) CMakeLists.txt:96 (include)

先解决第一个安装这个LZ4的包,安装代码如下

sudo apt install liblz4-dev

再次进行一遍 cmake … -GNinja,错误解决,但是出现了警告

CMake Warning at cmake/CMakeHelper.cmake:103 (add_executable):
Cannot generate a safe runtime search path for target colmap_main
because files in some directories may conflict with libraries in
implicit directories:

runtime library [libgmp.so.10] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /home/uriky/anaconda3/lib
runtime library [liblz4.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /home/uriky/anaconda3/lib
runtime library [libsqlite3.so.0] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /home/uriky/anaconda3/lib
runtime library [libglog.so.0] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /home/uriky/anaconda3/lib
runtime library [libgomp.so.1] in /usr/lib/gcc/x86_64-linux-gnu/7 may be hidden by files in:
  /home/uriky/anaconda3/lib

Some of these libraries may not be found correctly. Call Stack (most
recent call first): src/colmap/exe/CMakeLists.txt:67
(COLMAP_ADD_EXECUTABLE)
在这里插入图片描述

警告就不管了,解决完错误,继续上述ninja代码 报错了(待解决)在这里插入图片描述

FAILED:
src/colmap/mvs/CMakeFiles/colmap_mvs_cuda.dir/gpu_mat_prng.cu.o
/usr/local/cuda-10.0/bin/nvcc -DBOOST_ALL_NO_LIB
-DBOOST_FILESYSTEM_DYN_LINK -DBOOST_GRAPH_DYN_LINK -DBOOST_REGEX_DYN_LINK -DCOLMAP_CGAL_ENABLED -DCOLMAP_CUDA_ENABLED -DCOLMAP_GPU_ENABLED -DCOLMAP_GUI_ENABLED -DCOLMAP_OPENGL_ENABLED -DCOLMAP_OPENMP_ENABLED -DGFLAGS_IS_A_DLL=0 -DGLOG_VERSION_MAJOR=0 -DGLOG_VERSION_MINOR=5 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -I/home/uriky/桌面/NerfingMVS-main/colmap/src -isystem /home/uriky/anaconda3/inude -isystem /usr/include/eigen3 -isystem
/home/uriky/anaconda3/include/qt -isystem
/home/uriky/anaconda3/include/qt/QtCore -isystem
/home/uriky/anaconda3/./mkspecs/linux-g++ -isystem
/home/uriky/anaconda3/include/qt/QtOpenGL -isystem
/home/uriky/anaconda3/include/qt/QtWidgets -isystem
/home/uriky/anaconda3/include/qt/QtGui -isystem
/usr/local/cuda-10.0/include -Wno-deprecated-gpu-targets
–compiler-options -fPIC --use_fast_math --default-stream per-thread -Xptxas=-suppress-stack-size-warning -O3 -DNDEBUG -std=c++14 “–generate-code=arch=compute_89,code=[sm_89]” -Xcompiler=-fPIC -x cu
-c ‘/home/uriky/桌面/NerfingMVS-main/colmap/c/colmap/mvs/gpu_mat_prng.cu’
-o src/colmap/mvs/CMakeFiles/colmap_mvs_cuda.dir/gpu_mat_prng.cu.o && /usr/local/cuda-10.0/bin/nvcc -DBOOST_ALL_NO_LIB
-DBOOST_FILESYSTEM_DYN_LINK -DBOOST_GRAPH_DYN_LINK -DBOOST_REGEX_DYN_LINK -DCOLMAP_CGAL_ENABLED -DCOLMAP_CUDA_ENABLED -DCOLMAP_GPU_ENABLED -DCOLMAP_GUI_ENABLED -DCOLMAP_OPENGL_ENABLED -DCOLMAP_OPENMP_ENABLED -DGFLAGS_IS_A_DLL=0 -DGLOG_VERSION_MAJOR=0 -DGLOG_VERSION_MINOR=5 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -I/home/uriky/桌面/NerfingMVS-main/colmap/src -isystem /home/uriky/anaconda3/include -isystem /usr/include/eigen3 -isystem
/home/uriky/ananda3/include/qt -isystem
/home/uriky/anaconda3/include/qt/QtCore -isystem
/home/uriky/anaconda3/./mkspecs/linux-g++ -isystem
/home/uriky/anaconda3/include/qt/QtOpenGL -isystem
/home/uriky/anaconda3/include/qt/QtWidgets -isystem
/home/uriky/anaconda3/include/qt/QtGui -isystem
/usr/local/cuda-10.0/include -Wno-deprecated-gpu-targets
–compiler-options -fPIC --use_fast_math --default-stream per-thread -Xptxas=-suppress-stack-size-warning -O3 -DNDEBUG -std=c++14 “–generate-code=arch=compute_89,code=[sm_89]” -Xcompiler=-fPIC -x cu
-M ‘/home/uriky/桌面/NerfingMVS-main/colmap/src/colmap/mvs/gpu_mat_prng.cu’
-MT src/colmap/mvs/CMakeFil/colmap_mvs_cuda.dir/gpu_mat_prng.cu.o -o src/colmap/mvs/CMakeFiles/colmap_mvs_cuda.dir/gpu_mat_prng.cu.o.d nvcc
fatal : Unsupported gpu architecture ‘compute_89’ [59/213] Building
CXX object src/colmap/mvs/CMakeFiles/colmap_mvs.dir/meshing.cc.o In
file included from /usr/include/CGAL/Triangulation_3.h:62:0,
from /usr/include/CGAL/Delaunay_triangulation_3.h:40,
from /home/uriky/桌面/NerfingMVS-main/colmap/src/colmap/mvs/meshing.cc:37:
/home/uriky/anaconda3/include/boost/bind.hpp:41:1: note: #pragma
message: The practice of declaring the Bind placeholders (_1, _2, …)
in the global namespace is deprecated. Please use
<boost/bind/bind.hpp> + using namespace boost::placeholders, or define
BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior. ) ^
ninja: build stopped: subcommand failed.

成功后进行下一步运行COLMAP:

colmap -h
colmap gui

汇编与 CUDA支助 ,也安装Ubuntu的默认CUDA包:

    sudo apt-get install -y \
    nvidia-cuda-toolkit \
    nvidia-cuda-toolkit-gcc

或者,手动安装最新的CUDA从独的主页。 在CMake配置 指定 CMAKE_CUDA_ARCHITECTURES 为"本土",如果你想要跑COLMAP你 当前的机器,“所有”/“所有主要的”,以便能够将其分发给其他机, 或者一个具体CUDA构,如"75",等等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1657959.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(八)JSP教程——application对象

application对象是一个比较重要的对象&#xff0c;服务器在启动后就会产生这个application对象&#xff0c;所有连接到服务器的客户端application对象都是相同的&#xff0c;所有的客户端共享这个内置的application对象&#xff0c;直到服务器关闭为止。 可以使用application对…

【OpenHarmony 实战开发】 做一个 loading加载动画

本篇文章介绍了如何实现一个简单的 loading 加载动画&#xff0c;并且在文末提供了一个 demo 工程供读者下载学习。作为一个 OpenHarmony 南向开发者&#xff0c;接触北向应用开发并不多。北向开发 ArkUI 老是改来改去&#xff0c;对笔者这样的入门选手来说学习成本其实非常大&…

车载测试___长安汽车车机测试项目

项目介绍: 长安汽车车机是以腾讯车载互联为基础&#xff0c;融合了多媒体影音系统(QQ音乐、喜马拉雅FM、酷我音乐)、车载导航、车辆功能设定这些选项&#xff0c;可以在线听歌、导航、查看360度全景影像辅助系统&#xff0c;让车主驾车更加安逸享受。 具体模块包含远程车辆状…

深度学习笔记001

目录 一、批量规范化 二、残差网络ResNet 三、稠密连接网络&#xff08;DenseNet&#xff09; 四、循环神经网络 五、信息论 六、梯度截断 本篇blog仅仅是本人在学习《动手学深度学习 Pytorch版》一书中做的一些笔记&#xff0c;感兴趣的读者可以去官网http://zh.gluon.a…

英特尔StoryTTS:新数据集让文本到语音(TTS)表达更具丰富性和灵感

DeepVisionary 每日深度学习前沿科技推送&顶会论文分享&#xff0c;与你一起了解前沿深度学习信息&#xff01; 英特尔StoryTTS&#xff1a;新数据集让文本到语音&#xff08;TTS&#xff09;表达更具丰富性和灵感 引言&#xff1a;探索文本表达性在语音合成中的重要性 …

Imagine Flash、StyleMamba 、FlexControl、Multi-Scene T2V、TexControl

本文首发于公众号&#xff1a;机器感知 Imagine Flash、StyleMamba 、FlexControl、Multi-Scene T2V、TexControl You Only Cache Once: Decoder-Decoder Architectures for Language Models We introduce a decoder-decoder architecture, YOCO, for large language models, …

C++从入门到入土(二)——初步认识类与对象

目录 前言 类与对象的引入 类的定义 类的访问限定符及封装 访问限定符&#xff1a; 封装&#xff1a; 类的作用域 类的实例化 类的大小 this指针 this指针的特性 前言 各位佬们&#xff0c;在开始本篇文章的内容之前&#xff0c;我想先向大家道个歉&#xff0c;由于…

Linux流量分析工具 | nethogs

在应急过程中&#xff0c;经常会遇到应用访问缓慢&#xff0c;网络阻塞的情况&#xff0c;分析原因可能会想到存在恶意程序把带宽占满的可能。通过这样一个小工具可以快速定位异常占用带宽程序的路径、PID、占用流量大小或是排除由带宽占满导致服务器缓慢的猜想。 一、简介 Ne…

GitHub Actions 手动触发方式

目录 前言 Star Webhook 手动触发按钮 前言 GitHub Actions 是 Microsoft 收购 GitHub 后推荐的一款 CI/​CD 工具早期可能是处于初级开发阶段&#xff0c;它的功能非常原生&#xff0c;甚至没有直接提供一个手动触发按钮一般的触发方式为代码变动&#xff08;push 、pull…

Linux网络-PXE高效批量网络装机(命令+截图详细版)

目录 一.部署PXE远程安装服务 1.PXE概述 1.1.PXE批量部署的优点 1.2.要搭建PXE网络体系的前提条件 2.搭建PXE远程安装服务器 2.1.修改相关网络配置&#xff08;仅主机模式&#xff09; 2.2.关闭防火墙&#xff08;老规矩&#xff09; 2.3.保证挂载上 2.4.准备好配置文…

如何使用IntelliJ IDEA SSH连接本地Linux服务器远程开发

文章目录 1. 检查Linux SSH服务2. 本地连接测试3. Linux 安装Cpolar4. 创建远程连接公网地址5. 公网远程连接测试6. 固定连接公网地址7. 固定地址连接测试 本文主要介绍如何在IDEA中设置远程连接服务器开发环境&#xff0c;并结合Cpolar内网穿透工具实现无公网远程连接&#xf…

【面经】网络

了解TCP/IP协议,了解常用的网络协议&#xff1a;study-area 一、TCP/IP协议 TCP/IP协议是一组网络通信协议&#xff0c;旨在实现不同计算机之间的信息传输。 1、TCP/IP四层模型&#xff1a; 网络接口层、网络层、传输层和应用层。 网络接口层&#xff1a;定义了数据的格式和…

C++ 基础 输入输出

一 C 的基本IO 系统中的预定义流对象cin和cout: 输入流&#xff1a;cin处理标准输入&#xff0c;即键盘输入&#xff1b; 输出流&#xff1a;cout处理标准输出&#xff0c;即屏幕输出&#xff1b; 流&#xff1a;从某种IO设备上读入或写出的字符系列 使用cin、cout这两个流对…

【springboot基础】如何搭建一个web项目?

正在学习springboot&#xff0c;还是小白&#xff0c;今天分享一下如何搭建一个简单的springboot的web项目&#xff0c;只要写一个类就能实现最基础的前后端交互&#xff0c;实现web版helloworld &#xff0c;哈哈&#xff0c;虽然十分简陋&#xff0c;但也希望对你理解web运作…

车载测试系列:车载蓝牙测试(三)

HFP测试内容与测试方法 2.3 接听来电&#xff1a;测试手机来电时&#xff0c;能否从车载蓝牙设备和手机侧正常接听】拒接、通话是否正常。 1、预置条件&#xff1a;待测手机与车载车载设备处于连接状态 2、测试步骤&#xff1a; 1&#xff09;用辅助测试机拨打待测手机&…

【JavaWeb】Servlet+JSP+EL表达式+JSTL标签库+Filter过滤器+Listener监听器

需要提前准备了哪些技术&#xff0c;接下来的课才能听懂&#xff1f; JavaSE&#xff08;Java语言的标准版&#xff0c;Java提供的最基本的类库&#xff09; Java的开发环境搭建Java的基础语法Java的面向对象数组常用类异常集合多线程IO流反射机制注解Annotation… MySQL&…

CUDA流和事件

CUDA通过流来实现网格级并发。 流和事件 CUDA流是一系列异步的CUDA操作&#xff0c;这些操作按照主机代码确定的顺序在设备上执行。流可以封装这些操作&#xff0c;保持操作的顺序&#xff0c;允许操作在流中排队&#xff0c;并使他们在先前的所有操作之后执行。 这些操作包…

【Linux】在Linux中执行命令ifconfig, 报错-bash:ifconfig: command not found解决方案

一、报错信息 ifconfig 报错-bash:ifconfig: command not found 同时&#xff0c;通过ip addr查看&#xff0c;也看不到IP信息 二、解决方案 找到ifcfg-ens0文件&#xff0c;此文件的目录在/etc/sysconfig/network-scripts目录下 命令&#xff1a;cd /etc/sysconfig/network…

Windows系统本地部署DrawDB数据库设计工具并实现无公网IP远程访问

文章目录 1. Windows本地部署DrawDB2. 安装Cpolar内网穿透3. 实现公网访问DrawDB4. 固定DrawDB公网地址 开发中很多时候都会使用到数据库&#xff0c;所以选择一个好用的数据库设计工具会让工作效率翻倍。在当今数字化时代&#xff0c;数据库管理是许多企业和个人项目的核心。设…

buuctf-misc题目练习二

ningen 打开题目后是一张图片&#xff0c;放进winhex里面 发现PK&#xff0c;PK是压缩包ZIP 文件的文件头&#xff0c;下一步是想办法进行分离 Foremost可以依据文件内的文件头和文件尾对一个文件进行分离&#xff0c;或者识别当前的文件是什么文件。比如拓展名被删除、被附加…