1. 介绍
HUGS: Holistic Urban 3D Scene Understanding via Gaussian Splatting
基于 RGB 图像对城市场景进行整体理解是一个具有挑战性但又很重要的问题。它包括理解几何和外观,以实现新颖的视图合成、解析语义标签和跟踪移动物体。尽管取得了长足的进步,但现有方法通常侧重于此任务的特定方面,并且需要额外的输入,例如 LiDAR 扫描或手动注释的 3D 边界框。在本文中,我们介绍了一种利用 3D 高斯 Splatting 进行整体城市场景理解的新型管道。我们的主要思想涉及使用静态和动态 3D 高斯的组合来联合优化几何、外观、语义和运动,其中移动物体的姿势通过物理约束进行正则化。我们的方法能够实时渲染新视点,以高精度产生 2D 和 3D 语义信息,并重建动态场景,即使在 3D 边界框检测噪声很大的场景中也是如此。在 KITTI、KITTI-360 和 Virtual KITTI 2 上的实验结果证明了我们方法的有效性。
2. 下载数据
https://huggingface.co/datasets/hyzhou404/hugs_release
3. 下载代码
git clone git@github.com:hyzhou404/hugs.git --recursive
4. 环境配置
4.1. 创建环境
conda create -n hugs python=3.10 -y
4.1. 安装tiny-cuda-nn
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
4.2. 安装pytorch3d
pip install pytorch3d
4.3. 安装flow-vis-torch
pip install git+https://github.com/ChristophReich1996/Optical-Flow-Visualization-PyTorch
4.4. 安装依赖库
pip install submodules/simple-knnpip install submodules/hugs-rasterizationpip install -r requirements.txt
5. 运行
python render.py -m ${checkpoint_path} --data_type ${dataset_type} --iteration 30000 --affine
其中
dataset_type有下列选项
kitti
kitti360
waymo
nuscenes
pandaset
6. 问题记录
6.1. 安装环境时缺少依赖文件
6.1.1. 现象
glm/glm.hpp: no such file or directory
6.1.2. 解决方法
sudo apt-get install libglm-dev
6.2. 找不到库版本
6.2.1. 现象
No matching distribution found for matplotlib==3.9.0
No matching distribution found for numpy==1.26.4
6.2.2. 解决方法
一般matplotlib和numpy的版本影响不大,找一个最近的版本即可。
6.3. cv2部分初始化
6.3.1. 现象
AttributeError: partially initialized module cv2 has no attribute _registerMatType (most likely due to a circular import)
6.3.2. 解决方法
pip uninstall opencv-python
pip install "opencv-python-headless<4.3"
参考文献
GitHub - hyzhou404/HUGS: Official implementation of the paper "HUGS: Holistic Urban 3D Scene Understanding via Gaussian Splatting""
【问题CV2循环导入】AttributeError: partially initialized module cv2 has no attribute _registerMatType_attributeerror: partially initialized module' cv2'-CSDN博客