合成大规模、可探索且几何精确的3D城市场景是一项具有挑战性但有价值的任务,可为沉浸式和具身应用提供支持。 挑战在于缺乏用于训练泛化生成模型的大规模和高质量的真实世界3D扫描数据。 在本文中,我们采取了一种替代方法,通过协同利用现成的卫星图像(提供逼真的粗略几何形状)和开放域扩散模型(用于创建高质量的近景外观)来创建大规模3D场景。 我们提出了Skyfall-GS,这是第一个无需昂贵3D标注即可实现街区级3D场景创建框架,并具有实时、沉浸式3D探索功能。 我们定制了一种由课程驱动的迭代细化策略,以逐步增强几何完整性和照片级真实纹理。 大量实验表明,与最先进的方法相比,Skyfall-GS提供了改进的跨视图一致性几何形状和更逼真的纹理。
这个 Rust 项目展示了三种不同的光线追踪实现:基于 CPU 的渲染器、离线 GPU 渲染器和实时交互式 GPU 光线追踪器。
**CPU 光线追踪器** 执行软件渲染,将场景输出到 PPM 图像文件。**GPU 光线追踪器** 利用计算着色器实现显著更快的渲染速度,达到与 CPU 版本相当的质量,同样输出到 PPM。
最后,**实时 GPU 光线追踪器** 提供实时、交互式体验,具有相机控制。用户可以在具有光照/阴影的完整光线追踪和法线可视化调试模式之间切换。
所有版本都支持网格 (.obj) 和球体图元,GPU 版本需要兼容的 GPU(Vulkan、Metal 或 DirectX 12)。该项目使用最新的稳定 Rust 版本构建,并为每种实现提供清晰的构建/运行说明。 还有一个实时、基于 Web 的演示。
## pgvector:炒作之外
pgvector 提供了一个引人注目的想法——利用现有的 Postgres 基础设施进行向量搜索,但其生产就绪程度往往被高估。许多教程展示了简单的演示,掩盖了重大的扩展挑战。
主要问题包括复杂的索引管理(IVFFlat 与 HNSW,各有优缺点)、内存密集型索引构建可能扰乱生产数据库,以及难以在持续数据摄取的情况下保持实时搜索。更新需要仔细规划,以避免停机或性能下降。
此外,使用过滤器优化查询(对于实际应用至关重要)需要深入的 Postgres 专业知识,因为查询计划器难以处理向量特定的成本。混合搜索(结合向量和文本搜索)需要自定义实现。
虽然 Timescale 的 pgvectorscale 等解决方案解决了一些问题,但它们增加了复杂性。专用向量数据库(Pinecone、Weaviate 等)提供诸如智能查询计划、内置混合搜索和可扩展的实时索引等优势——在考虑工程时间和基础设施开销时,通常具有可比或更低的总体成本。
最终,pgvector 是一个有用的扩展,但团队应仔细权衡其操作复杂性与专用向量数据库的优势。