[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-nv-tlabs--SCube":3,"tool-nv-tlabs--SCube":64},[4,17,26,35,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,2,"2026-04-03T11:11:01",[13,14,15],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":10,"last_commit_at":32,"category_tags":33,"status":16},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[13,14,15,34],"视频",{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":23,"last_commit_at":41,"category_tags":42,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,43,34,44,15,45,46,13,47],"数据工具","插件","其他","语言模型","音频",{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,46,45],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":16},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",74939,"2026-04-05T23:16:38",[46,14,13,45],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":80,"owner_email":80,"owner_twitter":80,"owner_website":81,"owner_url":82,"languages":83,"stars":104,"forks":105,"last_commit_at":106,"license":107,"difficulty_score":108,"env_os":109,"env_gpu":110,"env_ram":111,"env_deps":112,"category_tags":124,"github_topics":125,"view_count":23,"oss_zip_url":80,"oss_zip_packed_at":80,"status":16,"created_at":131,"updated_at":132,"faqs":133,"releases":144},4132,"nv-tlabs\u002FSCube","SCube","[NeurIPS 2024] SCube: Instant Large-Scale Scene Reconstruction using VoxSplats","SCube 是一款专为大规模场景重建设计的开源 AI 工具，由英伟达多伦多 AI 实验室研发，相关成果已入选 NeurIPS 2024。它致力于解决传统方法在处理城市级或广阔户外场景时，重建速度慢、显存占用高以及细节丢失等痛点，能够实现“即时”生成高保真的三维场景。\n\n该工具的核心技术亮点在于创新性地提出了\"VoxSplats\"表示法，巧妙结合了体素（Voxel）的结构化优势与 3D 高斯泼溅（3D Gaussian Splatting）的渲染效率。这种混合架构不仅大幅提升了训练和推理速度，还有效支持了无限扩展的场景表达，特别适合处理如 Waymo 自动驾驶数据集这类包含海量帧序列的复杂数据。此外，项目近期还集成了 XCube 方案，进一步优化了使用体验。\n\nSCube 主要面向计算机视觉研究人员、自动驾驶算法工程师以及三维重建领域的开发者。如果你需要快速从多视角图像或视频流中构建大规模三维地图，或者正在探索高效的新视图合成技术，SCube 将是一个极具价值的研究基线和实用工具。需要注意的是，目前其使用仍具备一定的技术门槛，用户需具备配置 Conda 环境、处理 TensorFlow ","SCube 是一款专为大规模场景重建设计的开源 AI 工具，由英伟达多伦多 AI 实验室研发，相关成果已入选 NeurIPS 2024。它致力于解决传统方法在处理城市级或广阔户外场景时，重建速度慢、显存占用高以及细节丢失等痛点，能够实现“即时”生成高保真的三维场景。\n\n该工具的核心技术亮点在于创新性地提出了\"VoxSplats\"表示法，巧妙结合了体素（Voxel）的结构化优势与 3D 高斯泼溅（3D Gaussian Splatting）的渲染效率。这种混合架构不仅大幅提升了训练和推理速度，还有效支持了无限扩展的场景表达，特别适合处理如 Waymo 自动驾驶数据集这类包含海量帧序列的复杂数据。此外，项目近期还集成了 XCube 方案，进一步优化了使用体验。\n\nSCube 主要面向计算机视觉研究人员、自动驾驶算法工程师以及三维重建领域的开发者。如果你需要快速从多视角图像或视频流中构建大规模三维地图，或者正在探索高效的新视图合成技术，SCube 将是一个极具价值的研究基线和实用工具。需要注意的是，目前其使用仍具备一定的技术门槛，用户需具备配置 Conda 环境、处理 TensorFlow 记录文件以及操作命令行工具的基础能力。","# SCube: Instant Large-Scale Scene Reconstruction using VoxSplats\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_readme_c2d986cc33b7.gif\" alt=\"\"  width=\"1100\" \u002F>\n\u003C\u002Fdiv>\n\n**SCube: Instant Large-Scale Scene Reconstruction using VoxSplats**\u003Cbr>\n[Xuanchi Ren](https:\u002F\u002Fxuanchiren.com\u002F)$^* $, [Yifan Lu](https:\u002F\u002Fyifanlu0227.github.io\u002F)$^* $, [Hanxue Liang](https:\u002F\u002Fscholar.google.com\u002Fcitations?user=XcxDA14AAAAJ&hl=en), [Zhangjie Wu](https:\u002F\u002Fzhangjiewu.github.io\u002F), [Huan Ling](http:\u002F\u002Fwww.cs.toronto.edu\u002F~linghuan\u002F), [Mike Chen](https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fnvidia-mikechen\u002F), [Sanja Fidler](https:\u002F\u002Fwww.cs.utoronto.ca\u002F~fidler\u002F), [Francis Williams](https:\u002F\u002Fwww.fwilliams.info\u002F), [Jiahui Huang](https:\u002F\u002Fhuangjh-pub.github.io\u002F) \u003Cbr>\n\\* indicates equal contribution \u003Cbr>\n**[[Project Page]](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Fscube\u002F)**\n\n## News\n- 2024-12-11: Also check out our latest research [InfiniCube](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Finfinicube\u002F).\n- 2024-12-11: Code released! We have also integrated [XCube](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Fxcube\u002F) into this repository for easier use. For detailed instructions, please refer to the [XCube Instruction](XCUBE.md).\n\n## Installation\n```bash\nmkdir SCube-release # wrap it in a folder\ncd SCube-release\ngit clone https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FSCube.git \nmkdir wandb\nmkdir waymo_tfrecords \ncd SCube\n```\n\n**(Optional) Install libMamba for a huge quality of life improvement when using Conda**\n```bash\nconda update -n base conda\nconda install -n base conda-libmamba-solver\nconda config --set solver libmamba\n```\n\n**Install the conda environment**\n```bash\nconda env create -f environment.yml\nconda activate scube\nmim install \"mmcv>=2.0.0\"\npip install \"mmsegmentation>=1.0.0\"\n```\n\n### Setup WandB\nOur training script highly relies on [WandB](https:\u002F\u002Fwandb.ai\u002F). Please register an account for [WandB](https:\u002F\u002Fwandb.ai\u002F) first and get your `API_key`. Then you can setup for your machine by running this command in the terminal:\n```bash\nwandb login # requires your API key\n```\n\n## Data Preparation\n\n### Data Split Downloading\nFirst download our splits of waymo dataset.\n```bash\ngdown https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1d8V4aoHsDf5U0-SH_VY2MOZJdYvOG8TM -O ..\u002Fwaymo_split --folder\n```\n\n### Waymo Dataset Downloading\nDownload the all the training & validation clips from [waymo perception dataset v1.4.2](https:\u002F\u002Fwaymo.com\u002Fopen\u002Fdownload\u002F) to the `SCube-release\u002Fwaymo_tfrecords`. \n\nIf you have `sudo`, you can use [gcloud](https:\u002F\u002Fcloud.google.com\u002Fstorage\u002Fdocs\u002Fdiscover-object-storage-gcloud) to download them from terminal.\n\u003Cdetails>\n\u003Csummary>\u003Cspan style=\"font-weight: bold;\">gcloud installation (need sudo) and downloading from terminal\u003C\u002Fspan>\u003C\u002Fsummary>\n\n```bash\nsudo apt-get update\nsudo apt-get install apt-transport-https ca-certificates gnupg curl\ncurl https:\u002F\u002Fpackages.cloud.google.com\u002Fapt\u002Fdoc\u002Fapt-key.gpg | sudo gpg --dearmor -o \u002Fusr\u002Fshare\u002Fkeyrings\u002Fcloud.google.gpg\necho \"deb [signed-by=\u002Fusr\u002Fshare\u002Fkeyrings\u002Fcloud.google.gpg] https:\u002F\u002Fpackages.cloud.google.com\u002Fapt cloud-sdk main\" | sudo tee -a \u002Fetc\u002Fapt\u002Fsources.list.d\u002Fgoogle-cloud-sdk.list\nsudo apt-get update && sudo apt-get install google-cloud-cli\n```\n\nThen you can login your google account and download the above tfrecords via\n```bash\n# or use `gcloud init --no-launch-browser` if you are in a remote terminal session\ngcloud init \nbash datagen\u002Fdownload_waymo.sh datagen\u002Fwaymo_all.json ..\u002Fwaymo_tfrecords\n```\n\u003C\u002Fdetails>\n\nAfter downloading tfrecord files, we expect a folder structure as follows:\n```bash\nSCube-release\n|-- SCube\n|   `-- ...\n|-- waymo_split\n|   `-- ...\n`-- waymo_tfrecords\n    |-- segment-10247954040621004675_2180_000_2200_000_with_camera_labels.tfrecord\n    |-- segment-11379226583756500423_6230_810_6250_810_with_camera_labels.tfrecord\n    |-- ...\n    `-- segment-1172406780360799916_1660_000_1680_000_with_camera_labels.tfrecord\n```\n\n> [!NOTE]\n> If you download the tfrecord files from the console, you will have prefixes like `individual_files_training_` or `individual_files_validation_`. Make sure these prefixes are removed before further processing.\n\n### Data Processing\nWe first extract the image, LiDAR, pose, intrinsic, annotation files out of tfrecords, which will be saved in `..\u002Fwaymo_ns`. If you have multiple CPU cores, you can set `--num_workers` to your core number for parallelization. \n```bash\npython datagen\u002Fwaymo2nerfstudio.py -i ..\u002Fwaymo_tfrecords -o ..\u002Fwaymo_ns [--num_workers YOUR_CPU_CORE]\n```\n\nWe then process the raw data into webdataset format required by SCube training while infering SegFormer for sky mask and Metric3Dv2 for GT depth. The results will be saved in `..\u002Fwaymo_webdataset`. Note that this step is very time-comsuming for 1000 clips x 198 frames x 5 cameras, which can take over 1 day on 8x A100 GPUs. \n> [!NOTE]\n> You might encounter `AssertionError: MMCV==2.2.0 is used but incompatible. Please install mmcv>=2.0.0rc4.` when using mmcv. [Solution here](https:\u002F\u002Fgithub.com\u002Fopen-mmlab\u002Fmmsegmentation\u002Fissues\u002F3729#issuecomment-2225475821).\n\n> [!NOTE]\n> You might encounter `RuntimeError: Failed to find function: mono.model.backbones.vit_large_reg` when using Metric3D v2. [Solution here](https:\u002F\u002Fgithub.com\u002FYvanYin\u002FMetric3D\u002Fissues\u002F151#issuecomment-2333039827)\n\n```bash\n# single GPU\npython datagen\u002Fnerfstudio2webdataset.py -i ..\u002Fwaymo_ns -o ..\u002Fwaymo_webdataset\n\n# multiple GPU\ntorchrun --nnodes=1 --nproc-per-node=8 'datagen\u002Fnerfstudio2webdataset.py' -i ..\u002Fwaymo_ns -o ..\u002Fwaymo_webdataset\n```\n\nNow the `..\u002Fwaymo_ns` and `..\u002Fwaymo_tfrecords` will not be used anymore. We expect the folder structure like:\n```bash\nSCube-release\n|-- SCube\n|   `-- ...\n|-- waymo_split\n|   `-- ...\n`-- waymo_webdataset\n    `-- ...\n```\n\n### GT Voxel Downloading\nWe provide the webdataset-format files of ground-truth voxels on [Hugging Face](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fxrenaa\u002FSCube-Data\u002Ftree\u002Fmain\u002Fpc_voxelsize_01). Download and uncompress it in `SCube-release\u002Fwaymo_webdataset` along with other attributes.\n\nTo visualize the ground-truth voxel data, which is stored in point cloud format, you can run the following command:\n\n```bash\npython inference\u002Fvisualize_gt_pc.py -p \u003CGT_VOXEL_TAR_FILE>\n```\n\n## Model Training\n### VAE Training\n```bash\n# Coarse stage VAE\npython train.py configs\u002Fwaymo_scube\u002Ftrain_vae_64x64x64_dense_height_down2_residual.yaml --wname train_vae_64x64x64_dense_height_down2_residual --max_epochs 10 --gpus 8 --eval_interval 1\n\n# Fine stage VAE\npython train.py configs\u002Fwaymo_scube\u002Ftrain_vae_256x256x128_sparse.yaml --wname train_vae_256x256x128_sparse --max_epochs 10 --gpus 8 --eval_interval 1\n```\n\n### Geometry Reconstruction Training (Latent Voxel Diffusion Model)\n\n> [!IMPORTANT]  \n> You need to modify the `vae_checkpoint` in `configs\u002Fwaymo_scube\u002Ftrain_diffusion_64x64x64_image_cond.yaml` and `configs\u002Fwaymo_scube\u002Ftrain_diffusion_256x256x128_sparse.yaml` to your own experiments. In you wandb webpage, you can find a unique \"run id\" for your experiment and replace the `[YOUR_RUN_ID]` in the yaml file.\n\n```bash\n# Image conditioned voxel diffusion\npython train.py configs\u002Fwaymo_scube\u002Ftrain_diffusion_64x64x64_image_cond.yaml --wname train_diffusion_64x64x64_image_cond --max_epochs 40 --gpus 8 --eval_interval 1\n\n# Semantic conditioned upsampling voxel diffusion\npython train.py configs\u002Fwaymo_scube\u002Ftrain_diffusion_256x256x128_sparse.yaml --wname train_diffusion_256x256x128_sparse --max_epochs 20 --gpus 8 --eval_interval 1\n```\n\n### Appearance Reconstruction Training (GSM, *G*aussian *S*platting *M*odel)\n```bash\npython train.py configs\u002Fwaymo_scube\u002Ftrain_gsm_unet3d_view3.yaml --wname train_gsm_unet3d_view3 --max_epochs 30 --gpus 8 --eval_interval 1\n```\n\n## Model Inference\n**Inference VAE**\n```bash\n# replace nvidia-toronto to your own wandb account!\npython inference\u002Fvae.py none --ckpt_vae wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_vae_64x64x64_dense_height_down2_residual\npython inference\u002Fvae.py none --ckpt_vae wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_vae_256x256x128_sparse\n```\nThis will generate a folder `..\u002Fvae_output_waymo_wds\u002F`, storing predicted & GT grid + semantics. Specify `--ckpt_vae` to the experiment name.\n\n**Inference Diffusion**\n```bash\n# replace nvidia-toronto to your own wandb account!\npython inference\u002Fdiffusion.py none --use_ema --use_ddim --ddim_step 100 --ckpt_dm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_64x64x64_image_cond\npython inference\u002Fdiffusion.py none --use_ema --use_ddim --ddim_step 100 --ckpt_dm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_256x256x128_sparse\n```\nThis will generate a folder `..\u002Fdiffusion_output_waymo_wds\u002F`, storing predicted & GT voxel grid with semantics.\nSpecify `--ckpt_dm` to the experiment name.\n\n**Inference GSM**\n```bash\n# replace nvidia-toronto to your own wandb account!\npython inference\u002Fgaussian_feedforward.py none --ckpt_gsm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_gsm_unet3d_view3 [--save_gs]\n```\nThis will generate a folder `..\u002Fdiffusion_output_waymo_wds\u002F`, storing predicted & GT grid + semantics.\nSpecify `--ckpt_gsm` to the experiment name. Add `[--save_gs]` to save the 3D Gaussians.\n\n**Inference Full Pipeline**\n```bash\n# replace nvidia-toronto to your own wandb account!\npython inference\u002Fdiffusion_cascading_gsm.py none \\\n    --use_ema --use_ddim --ddim_step 100 \\\n    --ckpt_dm_c wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_64x64x64_image_cond \\\n    --ckpt_dm_f wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_256x256x128_sparse \\\n    --ckpt_gsm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_gsm_unet3d_view3 \\\n    --input_frame_offsets [0] \\\n    --sup_frame_offsets [0,5,10] \\\n    --split val \\\n    --val_starting_frame 0\n```\n\n## Visualize the Inference Result\n**Visualize Grids**\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_readme_ef069efea2fa.png\" alt=\"\"  width=\"900\" \u002F>\n\u003C\u002Fdiv>\n\nIn `..\u002Fvae_output_waymo_wds\u002F` and `..\u002Fdiffusion_output_waymo_wds\u002F` and `..\u002Fcascading_diffusion_output_waymo_wds`, you can find some folders containing `x.pt` and `x_gt.pt`, where `x` is the sample index for your inference. Run the following command to launch a interactive visualizer (even on a remote-ssh machine) in a web browser.\n```bash\npython inference\u002Fvisualize_grid_compare.py -p \u003CPT_FILES_FOLDER> [-t voxel]\n```\n\nwhere `-t` is available for `voxel` or `pc`. Do not use `voxel` for the fine stage, which is very heavy for rendering. It would be easy to use it on a remote machine with VSCode; VSCode will forward the port automatically for you.\n\n---\n**Visualize 3DGS**\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_readme_493ee6a4deb6.png\" alt=\"\"  width=\"900\" \u002F>\n\u003C\u002Fdiv>\n\nIn `..\u002Fsplat_output_waymo_wds` and `cascading_diffusion_output_waymo_wds`, you can find some folder containing `x_splat.pkl`, where `x` is the sample index for your inferenece. You can visualize the 3DGS with \n```bash \npython inference\u002Fvisualize_3dgs_pkl.py -p \u003C3DGS_PKL_FILE>\n```\n---\n**Shortcut**\n\nYou could install this project to create short cut for visualization.\n```bash\npoetry install \n```\nThen you will have command `vis-pair` equivalent to `python inference\u002Fvisualize_grid_compare.py`, `vis-gs` equivalent to `python inference\u002Fvisualize_3dgs_pkl.py` and `vis-gt-pc` equivalent to `inference\u002Fvisualize_gt_pc.py`. You can run visualization as\n```bash\nvis-pair -p \u003CPT_FILES_FOLDER>\nvis-gs -p \u003C3DGS_PKL_FILE>\nvis-gt-pc -p \u003CGT_VOXEL_TAR_FILE>\n```\n\n## License\n\nCopyright &copy; 2024, NVIDIA Corporation & affiliates. All rights reserved.\nThis work is made available under the [Nvidia Source Code License](LICENSE.txt).\n\n## Related Works\n- Lu et al. 2024. [InfiniCube: Unbounded and Controllable Dynamic 3D Driving Scene Generation with World-Guided Video Models](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Finfinicube\u002F).\n- Ren et al. 2024. [XCube: Large-Scale 3D Generative Modeling using Sparse Voxel Hierarchies](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Fxcube).\n- Williams et al. 2024. [𝑓VDB: A Deep-Learning Framework for Sparse, Large-Scale, and High-Performance Spatial Intelligence](https:\u002F\u002Farxiv.org\u002Fabs\u002F2407.01781).\n\n## Acknowledgement\n\nThis repo is based on https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FXCube.\n\n## Citation\n```\n@inproceedings{\n    ren2024scube,\n    title={SCube: Instant Large-Scale Scene Reconstruction using VoxSplats},\n    author={Ren, Xuanchi and Lu, Yifan and Liang, Hanxue and Wu, Jay Zhangjie and Ling, Huan and Chen, Mike and Fidler, Sanja annd Williams, Francis and Huang, Jiahui},\n    booktitle={The Thirty-eighth Annual Conference on Neural Information Processing Systems},\n    year={2024},\n}\n```\n\n\n","# SCube：使用 VoxSplats 实现实时大规模场景重建\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_readme_c2d986cc33b7.gif\" alt=\"\"  width=\"1100\" \u002F>\n\u003C\u002Fdiv>\n\n**SCube：使用 VoxSplats 实现实时大规模场景重建**\u003Cbr>\n[Xuanchi Ren](https:\u002F\u002Fxuanchiren.com\u002F)$^* $, [Yifan Lu](https:\u002F\u002Fyifanlu0227.github.io\u002F)$^* $, [Hanxue Liang](https:\u002F\u002Fscholar.google.com\u002Fcitations?user=XcxDA14AAAAJ&hl=en), [Zhangjie Wu](https:\u002F\u002Fzhangjiewu.github.io\u002F), [Huan Ling](http:\u002F\u002Fwww.cs.toronto.edu\u002F~linghuan\u002F), [Mike Chen](https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fnvidia-mikechen\u002F), [Sanja Fidler](https:\u002F\u002Fwww.cs.utoronto.ca\u002F~fidler\u002F), [Francis Williams](https:\u002F\u002Fwww.fwilliams.info\u002F), [Jiahui Huang](https:\u002F\u002Fhuangjh-pub.github.io\u002F) \u003Cbr>\n\\* 表示共同第一作者 \u003Cbr>\n**[[项目页面]](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Fscube\u002F)**\n\n## 最新消息\n- 2024-12-11：也请查看我们的最新研究 [InfiniCube](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Finfinicube\u002F)。\n- 2024-12-11：代码已发布！我们还在此仓库中集成了 [XCube](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Fxcube\u002F)，以便更方便地使用。有关详细说明，请参阅 [XCube 使用说明](XCUBE.md)。\n\n## 安装\n```bash\nmkdir SCube-release # 将其包裹在一个文件夹中\ncd SCube-release\ngit clone https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FSCube.git \nmkdir wandb\nmkdir waymo_tfrecords \ncd SCube\n```\n\n**(可选) 安装 libMamba，以大幅提升使用 Conda 时的体验**\n```bash\nconda update -n base conda\nconda install -n base conda-libmamba-solver\nconda config --set solver libmamba\n```\n\n**安装 Conda 环境**\n```bash\nconda env create -f environment.yml\nconda activate scube\nmim install \"mmcv>=2.0.0\"\npip install \"mmsegmentation>=1.0.0\"\n```\n\n### 设置 WandB\n我们的训练脚本高度依赖于 [WandB](https:\u002F\u002Fwandb.ai\u002F)。请先注册一个 [WandB](https:\u002F\u002Fwandb.ai\u002F) 账户并获取您的 `API_key`。然后您可以在终端中运行以下命令来为您的机器进行设置：\n```bash\nwandb login # 需要您的 API 密钥\n```\n\n## 数据准备\n\n### 数据拆分下载\n首先下载我们的 Waymo 数据集拆分。\n```bash\ngdown https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1d8V4aoHsDf5U0-SH_VY2MOZJdYvOG8TM -O ..\u002Fwaymo_split --folder\n```\n\n### Waymo 数据集下载\n从 [Waymo 感知数据集 v1.4.2](https:\u002F\u002Fwaymo.com\u002Fopen\u002Fdownload\u002F) 下载所有训练和验证片段，并将其保存到 `SCube-release\u002Fwaymo_tfrecords`。\n\n如果您有 `sudo` 权限，可以使用 [gcloud](https:\u002F\u002Fcloud.google.com\u002Fstorage\u002Fdocs\u002Fdiscover-object-storage-gcloud) 从终端下载它们。\n\u003Cdetails>\n\u003Csummary>\u003Cspan style=\"font-weight: bold;\">gcloud 安装（需要 sudo）及从终端下载\u003C\u002Fspan>\u003C\u002Fsummary>\n\n```bash\nsudo apt-get update\nsudo apt-get install apt-transport-https ca-certificates gnupg curl\ncurl https:\u002F\u002Fpackages.cloud.google.com\u002Fapt\u002Fdoc\u002Fapt-key.gpg | sudo gpg --dearmor -o \u002Fusr\u002Fshare\u002Fkeyrings\u002Fcloud.google.gpg\necho \"deb [signed-by=\u002Fusr\u002Fshare\u002Fkeyrings\u002Fcloud.google.gpg] https:\u002F\u002Fpackages.cloud.google.com\u002Fapt cloud-sdk main\" | sudo tee -a \u002Fetc\u002Fapt\u002Fsources.list.d\u002Fgoogle-cloud-sdk.list\nsudo apt-get update && sudo apt-get install google-cloud-cli\n```\n\n然后您可以登录 Google 账号，并通过以下命令下载上述 tfrecord 文件：\n```bash\n# 或者使用 `gcloud init --no-launch-browser` 如果您在远程终端会话中\ngcloud init \nbash datagen\u002Fdownload_waymo.sh datagen\u002Fwaymo_all.json ..\u002Fwaymo_tfrecords\n```\n\u003C\u002Fdetails>\n\n下载 tfrecord 文件后，我们期望的文件夹结构如下：\n```bash\nSCube-release\n|-- SCube\n|   `-- ...\n|-- waymo_split\n|   `-- ...\n`-- waymo_tfrecords\n    |-- segment-10247954040621004675_2180_000_2200_000_with_camera_labels.tfrecord\n    |-- segment-11379226583756500423_6230_810_6250_810_with_camera_labels.tfrecord\n    |-- ...\n    `-- segment-1172406780360799916_1660_000_1680_000_with_camera_labels.tfrecord\n```\n\n> [!NOTE]\n> 如果您从控制台下载 tfrecord 文件，文件名前可能会带有 `individual_files_training_` 或 `individual_files_validation_` 等前缀。请确保在进一步处理之前移除这些前缀。\n\n### 数据处理\n我们首先从 tfrecord 文件中提取图像、LiDAR、位姿、内参和标注文件，并将它们保存到 `..\u002Fwaymo_ns`。如果您有多核 CPU，可以设置 `--num_workers` 为您拥有的核心数以实现并行化。\n```bash\npython datagen\u002Fwaymo2nerfstudio.py -i ..\u002Fwaymo_tfrecords -o ..\u002Fwaymo_ns [--num_workers YOUR_CPU_CORE]\n```\n\n然后我们将原始数据处理成 SCube 训练所需的 webdataset 格式，同时使用 SegFormer 推断天空掩码以及 Metric3Dv2 获取 GT 深度。结果将保存到 `..\u002Fwaymo_webdataset`。请注意，这一步对于 1000 个片段 × 198 帧 × 5 个摄像头来说非常耗时，在 8 张 A100 GPU 上可能需要超过一天的时间。\n> [!NOTE]\n> 在使用 mmcv 时，您可能会遇到 `AssertionError: MMCV==2.2.0 is used but incompatible. Please install mmcv>=2.0.0rc4.` 的错误。[解决方案在这里](https:\u002F\u002Fgithub.com\u002Fopen-mmlab\u002Fmmsegmentation\u002Fissues\u002F3729#issuecomment-2225475821)。\n\n> [!NOTE]\n> 在使用 Metric3D v2 时，您可能会遇到 `RuntimeError: Failed to find function: mono.model.backbones.vit_large_reg` 的错误。[解决方案在这里](https:\u002F\u002Fgithub.com\u002FYvanYin\u002FMetric3D\u002Fissues\u002F151#issuecomment-2333039827)。\n\n```bash\n# 单 GPU\npython datagen\u002Fnerfstudio2webdataset.py -i ..\u002Fwaymo_ns -o ..\u002Fwaymo_webdataset\n\n# 多 GPU\ntorchrun --nnodes=1 --nproc-per-node=8 'datagen\u002Fnerfstudio2webdataset.py' -i ..\u002Fwaymo_ns -o ..\u002Fwaymo_webdataset\n```\n\n现在 `..\u002Fwaymo_ns` 和 `..\u002Fwaymo_tfrecords` 将不再使用。我们期望的文件夹结构如下：\n```bash\nSCube-release\n|-- SCube\n|   `-- ...\n|-- waymo_split\n|   `-- ...\n`-- waymo_webdataset\n    `-- ...\n```\n\n### GT 体素下载\n我们在 [Hugging Face](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fxrenaa\u002FSCube-Data\u002Ftree\u002Fmain\u002Fpc_voxelsize_01) 上提供了地面真值体素的 webdataset 格式文件。请将其下载并解压缩到 `SCube-release\u002Fwaymo_webdataset` 中，与其他属性一起存放。\n\n要可视化以点云格式存储的地面真值体素数据，您可以运行以下命令：\n\n```bash\npython inference\u002Fvisualize_gt_pc.py -p \u003CGT_VOXEL_TAR_FILE>\n```\n\n## 模型训练\n### VAE 训练\n```bash\n# 粗略阶段 VAE\npython train.py configs\u002Fwaymo_scube\u002Ftrain_vae_64x64x64_dense_height_down2_residual.yaml --wname train_vae_64x64x64_dense_height_down2_residual --max_epochs 10 --gpus 8 --eval_interval 1\n\n# 精细阶段 VAE\npython train.py configs\u002Fwaymo_scube\u002Ftrain_vae_256x256x128_sparse.yaml --wname train_vae_256x256x128_sparse --max_epochs 10 --gpus 8 --eval_interval 1\n```\n\n### 几何重建训练（潜在体素扩散模型）\n\n> [!IMPORTANT]  \n> 您需要在 `configs\u002Fwaymo_scube\u002Ftrain_diffusion_64x64x64_image_cond.yaml` 和 `configs\u002Fwaymo_scube\u002Ftrain_diffusion_256x256x128_sparse.yaml` 中将 `vae_checkpoint` 修改为您自己的实验。在您的 WandB 页面上，您可以找到一个唯一的“run id”，并将其替换为 yaml 文件中的 `[YOUR_RUN_ID]`。\n\n```bash\n\n# 图像条件下的体素扩散\npython train.py configs\u002Fwaymo_scube\u002Ftrain_diffusion_64x64x64_image_cond.yaml --wname train_diffusion_64x64x64_image_cond --max_epochs 40 --gpus 8 --eval_interval 1\n\n# 语义条件下的上采样体素扩散\npython train.py configs\u002Fwaymo_scube\u002Ftrain_diffusion_256x256x128_sparse.yaml --wname train_diffusion_256x256x128_sparse --max_epochs 20 --gpus 8 --eval_interval 1\n```\n\n### 外观重建训练（GSM，*G*aussian *S*platting *M*odel）\n```bash\npython train.py configs\u002Fwaymo_scube\u002Ftrain_gsm_unet3d_view3.yaml --wname train_gsm_unet3d_view3 --max_epochs 30 --gpus 8 --eval_interval 1\n```\n\n## 模型推理\n**VAE 推理**\n```bash\n# 将 nvidia-toronto 替换为您的 W&B 账号！\npython inference\u002Fvae.py none --ckpt_vae wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_vae_64x64x64_dense_height_down2_residual\npython inference\u002Fvae.py none --ckpt_vae wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_vae_256x256x128_sparse\n```\n这将生成一个文件夹 `..\u002Fvae_output_waymo_wds\u002F`，存储预测的和真实的网格及语义信息。请通过 `--ckpt_vae` 指定实验名称。\n\n**扩散模型推理**\n```bash\n# 将 nvidia-toronto 替换为您的 W&B 账号！\npython inference\u002Fdiffusion.py none --use_ema --use_ddim --ddim_step 100 --ckpt_dm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_64x64x64_image_cond\npython inference\u002Fdiffusion.py none --use_ema --use_ddim --ddim_step 100 --ckpt_dm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_256x256x128_sparse\n```\n这将生成一个文件夹 `..\u002Fdiffusion_output_waymo_wds\u002F`，存储预测的和真实的带有语义信息的体素网格。请通过 `--ckpt_dm` 指定实验名称。\n\n**GSM 推理**\n```bash\n# 将 nvidia-toronto 替换为您的 W&B 账号！\npython inference\u002Fgaussian_feedforward.py none --ckpt_gsm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_gsm_unet3d_view3 [--save_gs]\n```\n这将生成一个文件夹 `..\u002Fdiffusion_output_waymo_wds\u002F`，存储预测的和真实的网格及语义信息。请通过 `--ckpt_gsm` 指定实验名称。添加 `[--save_gs]` 可以保存 3D 高斯分布。\n\n**完整流水线推理**\n```bash\n# 将 nvidia-toronto 替换为您的 W&B 账号！\npython inference\u002Fdiffusion_cascading_gsm.py none \\\n    --use_ema --use_ddim --ddim_step 100 \\\n    --ckpt_dm_c wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_64x64x64_image_cond \\\n    --ckpt_dm_f wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_256x256x128_sparse \\\n    --ckpt_gsm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_gsm_unet3d_view3 \\\n    --input_frame_offsets [0] \\\n    --sup_frame_offsets [0,5,10] \\\n    --split val \\\n    --val_starting_frame 0\n```\n\n## 可视化推理结果\n**网格可视化**\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_readme_ef069efea2fa.png\" alt=\"\"  width=\"900\" \u002F>\n\u003C\u002Fdiv>\n\n在 `..\u002Fvae_output_waymo_wds\u002F`、`..\u002Fdiffusion_output_waymo_wds\u002F` 和 `..\u002Fcascading_diffusion_output_waymo_wds\u002F` 中，您可以找到一些包含 `x.pt` 和 `x_gt.pt` 的文件夹，其中 `x` 是您推理的样本索引。运行以下命令，即可在网页浏览器中启动交互式可视化工具（即使是在远程 SSH 机器上）。\n```bash\npython inference\u002Fvisualize_grid_compare.py -p \u003CPT_FILES_FOLDER> [-t voxel]\n```\n\n其中 `-t` 可以是 `voxel` 或 `pc`。请勿在精细阶段使用 `voxel`，因为渲染负担过重。在使用 VSCode 连接远程机器时，可以轻松完成此操作；VSCode 会自动为您转发端口。\n\n---\n**3DGS 可视化**\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_readme_493ee6a4deb6.png\" alt=\"\"  width=\"900\" \u002F>\n\u003C\u002Fdiv>\n\n在 `..\u002Fsplat_output_waymo_wds` 和 `cascading_diffusion_output_waymo_wds` 中，您可以找到一些包含 `x_splat.pkl` 的文件夹，其中 `x` 是您推理的样本索引。您可以通过以下命令可视化 3DGS：\n```bash\npython inference\u002Fvisualize_3dgs_pkl.py -p \u003C3DGS_PKL_FILE>\n```\n---\n**快捷方式**\n\n您可以安装该项目以创建可视化快捷方式。\n```bash\npoetry install \n```\n安装后，您将拥有 `vis-pair` 命令，等同于 `python inference\u002Fvisualize_grid_compare.py`；`vis-gs` 等同于 `python inference\u002Fvisualize_3dgs_pkl.py`；`vis-gt-pc` 等同于 `inference\u002Fvisualize_gt_pc.py`。您可以这样运行可视化：\n```bash\nvis-pair -p \u003CPT_FILES_FOLDER>\nvis-gs -p \u003C3DGS_PKL_FILE>\nvis-gt-pc -p \u003CGT_VOXEL_TAR_FILE>\n```\n\n## 许可证\n\n版权所有 © 2024，NVIDIA Corporation 及其附属公司。保留所有权利。\n本作品根据 [Nvidia 源代码许可证](LICENSE.txt) 提供。\n\n## 相关工作\n- Lu 等，2024 年。[InfiniCube：基于世界引导视频模型的无界且可控的动态 3D 驾驶场景生成](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Finfinicube\u002F)。\n- Ren 等，2024 年。[XCube：利用稀疏体素层次结构进行大规模 3D 生成建模](https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Ftoronto-ai\u002Fxcube\u002F)。\n- Williams 等，2024 年。[𝑓VDB：用于稀疏、大规模和高性能空间智能的深度学习框架](https:\u002F\u002Farxiv.org\u002Fabs\u002F2407.01781)。\n\n## 致谢\n\n本仓库基于 https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FXCube。\n\n## 引用\n```\n@inproceedings{\n    ren2024scube,\n    title={SCube：使用 VoxSplats 实现即时的大规模场景重建},\n    author={Ren, Xuanchi and Lu, Yifan and Liang, Hanxue and Wu, Jay Zhangjie and Ling, Huan and Chen, Mike and Fidler, Sanja annd Williams, Francis and Huang, Jiahui},\n    booktitle={第 38 届神经信息处理系统年度会议},\n    year={2024},\n}\n```","# SCube 快速上手指南\n\nSCube 是一个基于 VoxSplats 技术，用于即时大规模场景重建的开源工具。本指南将帮助中国开发者快速完成环境配置并运行基础推理。\n\n## 1. 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**: Linux (推荐 Ubuntu 20.04+)\n*   **GPU**: NVIDIA GPU (建议显存 ≥ 24GB，如 A100\u002FA6000\u002F3090\u002F4090)，已安装 CUDA 驱动。\n*   **包管理器**: Conda (推荐安装 `libmamba` 求解器以加速依赖解析)。\n*   **账号**: [Weights & Biases (WandB)](https:\u002F\u002Fwandb.ai\u002F) 账号（用于模型权重管理和实验追踪）。\n*   **网络**: 由于项目依赖 Google Drive、Hugging Face 和 Waymo 数据集，国内用户建议配置科学网络环境或使用代理加速下载。\n\n## 2. 安装步骤\n\n### 2.1 克隆代码与目录初始化\n\n```bash\nmkdir SCube-release\ncd SCube-release\ngit clone https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FSCube.git \nmkdir wandb\nmkdir waymo_tfrecords \ncd SCube\n```\n\n### 2.2 配置 Conda 环境\n\n为提升依赖安装速度，强烈建议启用 `libmamba` 求解器：\n\n```bash\nconda update -n base conda\nconda install -n base conda-libmamba-solver\nconda config --set solver libmamba\n```\n\n创建并激活虚拟环境，安装核心依赖：\n\n```bash\nconda env create -f environment.yml\nconda activate scube\nmim install \"mmcv>=2.0.0\"\npip install \"mmsegmentation>=1.0.0\"\n```\n\n> **注意**: 若遇到 `mmcv` 版本兼容性问题，请参考官方文档或相关 Issue 进行微调。\n\n### 2.3 配置 WandB\n\n登录您的 WandB 账号以获取 API Key 并完成本地认证：\n\n```bash\nwandb login\n# 按提示输入您的 API Key\n```\n\n### 2.4 数据准备（简述）\n\n完整训练需要下载 Waymo 数据集并进行复杂预处理。若仅需**快速测试推理**，您可以跳过繁琐的数据采集步骤，直接从 Hugging Face 下载预处理的 Ground Truth Voxel 数据用于验证可视化流程：\n\n1.  访问 [SCube-Data Hugging Face 页面](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fxrenaa\u002FSCube-Data\u002Ftree\u002Fmain\u002Fpc_voxelsize_01)。\n2.  下载文件并解压至 `SCube-release\u002Fwaymo_webdataset` 目录。\n\n*(注：完整的数据集下载与 TFRecord 转换流程较长，涉及 Waymo 官网注册及大量磁盘 IO，初次上手建议先熟悉推理流程。)*\n\n## 3. 基本使用\n\n以下示例展示如何使用官方预训练模型进行**全链路推理**（从体素生成到高斯泼溅重建）。\n\n### 3.1 运行全链路推理\n\n请确保将命令中的 `nvidia-toronto` 替换为您自己的 WandB 用户名（如果使用了官方公开权重且权限允许，可直接尝试；否则需先在 WandB 上复现或申请权限）。\n\n```bash\npython inference\u002Fdiffusion_cascading_gsm.py none \\\n    --use_ema --use_ddim --ddim_step 100 \\\n    --ckpt_dm_c wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_64x64x64_image_cond \\\n    --ckpt_dm_f wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_diffusion_256x256x128_sparse \\\n    --ckpt_gsm wdb:nvidia-toronto\u002Fscube-scene-recon\u002Fwaymo_wds\u002Ftrain_gsm_unet3d_view3 \\\n    --input_frame_offsets [0] \\\n    --sup_frame_offsets [0,5,10] \\\n    --split val \\\n    --val_starting_frame 0\n```\n\n执行成功后，结果将保存在 `..\u002Fcascading_diffusion_output_waymo_wds\u002F` 目录下。\n\n### 3.2 可视化结果\n\n项目提供了便捷的可视化工具。推荐安装 Poetry 以使用快捷命令：\n\n```bash\npoetry install\n```\n\n**查看体素网格对比 (Voxel Grid):**\n```bash\nvis-pair -p \u003CPT_FILES_FOLDER>\n# 或者直接使用 python:\n# python inference\u002Fvisualize_grid_compare.py -p \u003CPT_FILES_FOLDER> [-t voxel]\n```\n*提示：在远程服务器使用时，VSCode 会自动转发端口，可直接在浏览器中交互查看。*\n\n**查看 3D 高斯泼溅 (3DGS):**\n```bash\nvis-gs -p \u003C3DGS_PKL_FILE>\n# 或者直接使用 python:\n# python inference\u002Fvisualize_3dgs_pkl.py -p \u003C3DGS_PKL_FILE>\n```\n\n**查看 Ground Truth 点云:**\n```bash\nvis-gt-pc -p \u003CGT_VOXEL_TAR_FILE>\n```\n\n通过以上步骤，您即可完成 SCube 的基础部署并观察到重建效果。如需进行模型训练，请参考原文档中的 \"Model Training\" 章节配置相应的 YAML 文件。","某自动驾驶团队需要利用 Waymo 数据集快速重建城市级大规模街道场景，以训练感知算法并生成仿真测试环境。\n\n### 没有 SCube 时\n- **重建耗时极长**：处理公里级的街道数据通常需要数小时甚至数天，无法支持快速迭代。\n- **显存需求过高**：传统神经辐射场（NeRF）或高斯泼溅方法在处理大场景时显存爆炸，必须对场景进行繁琐的分块切割。\n- **拼接痕迹明显**：分块重建后，区块之间的接缝处容易出现几何断裂或纹理不一致，影响视觉真实感。\n- **动态物体干扰**：车辆和行人等动态元素难以自动剔除，导致重建场景中出现“鬼影”或模糊伪影。\n\n### 使用 SCube 后\n- **即时完成重建**：基于 VoxSplats 技术，SCube 能在几分钟内完成大规模场景的瞬时重建，效率提升数个数量级。\n- **统一全局表达**：无需手动分块，SCube 直接对整个大场景进行统一建模，彻底消除了区块拼接的缝隙问题。\n- **资源占用可控**：优化的体素结构大幅降低了显存峰值，使得在单张消费级显卡上处理城市级数据成为可能。\n- **动态分离纯净**：内置的动态物体过滤机制自动清理移动目标，直接输出包含静态背景的高质量“数字孪生”场景。\n\nSCube 将大规模场景重建从“离线批处理任务”转变为“即时交互体验”，极大加速了自动驾驶仿真与具身智能的研发闭环。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnv-tlabs_SCube_c2d986cc.gif","nv-tlabs","NVIDIA Spatial Intelligence Lab (SIL)","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fnv-tlabs_923b27b7.png","Our goal is to advance foundational technologies enabling AI systems to perceive, model, and meaningfully interact with the physical world.",null,"https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Fsil\u002F","https:\u002F\u002Fgithub.com\u002Fnv-tlabs",[84,88,92,96,100],{"name":85,"color":86,"percentage":87},"Python","#3572A5",56.1,{"name":89,"color":90,"percentage":91},"C","#555555",22.7,{"name":93,"color":94,"percentage":95},"Cuda","#3A4E3A",18.6,{"name":97,"color":98,"percentage":99},"C++","#f34b7d",2.6,{"name":101,"color":102,"percentage":103},"Shell","#89e051",0.1,521,25,"2026-03-11T14:11:41","NOASSERTION",4,"Linux","必需 NVIDIA GPU。训练示例命令指定 --gpus 8，数据处理步骤提及在 8x A100 GPU 上运行，暗示需要多卡高性能环境（如 A100）。未明确具体显存大小，但处理大规模场景和扩散模型通常要求高显存（建议 24GB+ 以支持批量训练）。","未说明（建议大容量内存以支持 Waymo 数据集处理和并行化）",{"notes":113,"python":114,"dependencies":115},"1. 强烈建议使用 Conda 管理环境，并可选安装 libMamba 求解器以提升效率。\n2. 必须注册 WandB 账号并配置 API Key，训练脚本高度依赖 WandB 进行日志记录和模型检查点管理。\n3. 数据准备阶段非常耗时：将 Waymo 数据转换为 webdataset 格式并在 8x A100 上运行可能需要超过 1 天。\n4. 需手动下载 Waymo Open Dataset (v1.4.2) 及作者提供的分割文件。\n5. 已知问题：使用 mmcv 时可能遇到版本兼容性报错，使用 Metric3D v2 时可能遇到函数查找失败，README 中提供了具体的解决方案链接。\n6. 推理和可视化支持通过 SSH 远程端口转发在浏览器中进行。","未说明（通过 conda environment.yml 安装，通常为 3.8 或 3.9+）",[116,117,118,119,120,121,122,123],"torch","mmcv>=2.0.0","mmsegmentation>=1.0.0","wandb","conda","gdown","webdataset","poetry",[45,14],[126,127,128,129,130],"3d-reconstruction","diffusion-models","gaussian-splatting","sparse-view","voxel","2026-03-27T02:49:30.150509","2026-04-06T12:04:03.227811",[134,139],{"id":135,"question_zh":136,"answer_zh":137,"source_url":138},18821,"遇到 CUDA error: no kernel image is available for execution on the device 错误怎么办？","该问题通常与 PyTorch 版本和 GPU 架构不兼容有关。有用户反馈在 80G A800 显卡上，将 PyTorch 降级到 2.2.0 版本解决了此问题。建议检查您的 GPU 型号并尝试调整 PyTorch 版本。","https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FSCube\u002Fissues\u002F7",{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},18822,"如何可视化下载的 GT Voxel（.pth 文件）？","项目已添加专门用于可视化 GT Voxel 的脚本。您可以运行以下命令：\npython inference\u002Fvisualize_gt_pc.py -p \u003CGT_VOXEL_TAR_FILE>\n其中 \u003CGT_VOXEL_TAR_FILE> 应为 pc_voxelsize_01 文件夹下的 tar 文件。\n如果已安装 poetry 环境，也可以使用快捷命令：\nvis-gt-pc -p \u003CGT_VOXEL_TAR_FILE>","https:\u002F\u002Fgithub.com\u002Fnv-tlabs\u002FSCube\u002Fissues\u002F5",[]]