Paper: 2607.02515 Authors: Haofei Xu, Rundi Wu, Philipp Henzler, Nikolai Kalischek, Michael Oechsle, Fabian Manhardt, Marc Pollefeys, Andreas Geiger, Federico Tombari, Michael Niemeyer Categories: cs.CV
The Gap
Here’s where we’ve landed: single-image 3D reconstruction has gotten good, but the winning recipes are architecturally bloated. Latent diffusion approaches (like those building on pretrained LDMs) first need to tokenize raw 3D point maps into discrete latent codes — requiring an encoder-decoder tokenizer that itself needs training — before a diffusion model can even touch the geometry. Hybrid methods take a different but equally complex route: stacking multiple specialized loss functions and fusing different backbone types to squeeze out performance. Both camps implicitly assume that raw 3D point maps are too high-dimensional or noisy to diffuse over directly.
This paper challenges that assumption head-on. The authors ask: what if we just… don’t do any of that? What if a plain Vision Transformer doing diffusion directly on pixel-space point map patches, conditioned on a frozen DINOv3 encoder, is enough?
[Problem]
Existing 3D recon methods = complex hybrids
or latent diffusion with tokenizers
|
v
[Assumption being challenged]
"Raw point maps are too hard to
diffuse over directly"
|
v
[Method: PointDiT]
Plain ViT + pixel-space diffusion
on raw point map patches
conditioned on DINOv3 tokens
trained from scratch
|
v
[Evidence]
Outperforms latent methods
sharper geometry
robust on transparent objects
|
v
[Conclusion]
Complexity was unnecessary.
Simplicity wins.
The Increment
One sentence: Before this paper, you needed a tokenizer to compress 3D geometry into latent codes before diffusion could work; after this paper, we know that a plain Transformer diffusing directly on raw point map patches — no tokenizer, no compression, no complex losses — actually does better.
Core Mechanism
PointDiT has three moving parts, and the beauty is that none of them are novel individually — the contribution is their assembly.
First, the conditioning path: a frozen DINOv3 vision encoder ingests the input image and produces a sequence of image tokens. These tokens carry rich semantic information about what’s in the scene — object boundaries, surface orientations, material hints — without any fine-tuning. They’re fed into the Transformer as cross-attention conditioning.
Second, the diffusion path: the ground-truth 3D point map (a per-pixel {x, y, z} coordinate map) is divided into patches, just like how ViT splits an image. These point map patches become the “tokens” that the diffusion process corrupts and denoises. No latent compression, no VQ-VAE, no tokenizer — raw geometry patches go straight into the diffusion backbone.
Third, the backbone itself: a plain Diffusion Transformer (DiT) that processes the noisy point map patches through self-attention (mixing information across spatial locations in the point map) and cross-attention (pulling in semantic context from the DINOv3 image tokens). The entire diffusion backbone is trained from scratch — no pretrained latent diffusion model to piggyback on.
Input Image
|
v
[DINOv3 (frozen)] --> image tokens
|
| (cross-attention)
v
Noisy point map patches --> [Plain DiT Backbone] --> Denoised point map patches
^ |
| v
[Forward diffusion] [Reverse denoising]
| |
Ground truth point map Predicted point map
Think of it like simultaneous interpretation at the UN. The input image is the original speaker — rich, detailed, but you need it decoded into 3D. DINOv3 is the expert interpreter sitting in a soundproof booth: she doesn’t change, doesn’t get retrained, just listens and produces semantic summaries (image tokens) in real time. The DiT is the audience member trying to reconstruct the full meaning from a noisy radio signal (the corrupted point map patches). At each denoising step, the audience member glances up at the interpreter’s output for context — “ah, that’s a transparent glass surface, so the depth readings will be unreliable here” — and uses that to refine their understanding. The interpreter never learns from the audience; the audience never speaks to the speaker directly. But together, the system produces a clean, complete 3D reconstruction. The key insight is that the audience member (DiT) was never pretrained on some other task — they learned to listen from scratch, which turns out to make them better at this specific job than someone adapted from a different one.
Key Concepts
-
Pixel-Space vs. Latent-Space Diffusion: Imagine you’re restoring a damaged photograph. Latent-space diffusion is like first compressing the photo into a tiny thumbnail, restoring the thumbnail, then blowing it back up — you save compute but lose fine details in the compression/decompression cycle. Pixel-space diffusion works on the full-resolution image directly. It’s more expensive, but you never lose information to compression. The paper’s key bet is that for 3D point maps, the fidelity gain from working in pixel space outweighs the compute cost — and a plain ViT is efficient enough to make this tractable.
-
Point Map Patches: A depth map gives you one number (distance) per pixel. A point map gives you three numbers (x, y, z coordinates in 3D space) per pixel — it’s a full 3D surface, not just a distance field. “Patches” here means the standard ViT trick: instead of feeding the whole point map at once (too expensive), you slice it into small rectangular regions (like 16x16 pixels), flatten each region’s coordinates into a vector, and treat each vector as a token. The Transformer then reasons about how these patches relate to each other.
-
Training from Scratch: Many diffusion papers today start from a model pretrained on millions of images (like Stable Diffusion) and fine-tune it. This paper trains the entire diffusion backbone with random initialization on 3D reconstruction data only. The surprising result is that this doesn’t hurt — it actually helps, because the model isn’t carrying any baggage from 2D image generation that might conflict with 3D geometry prediction.
Framework Shift
Before (mainstream approach): After (this paper):
Input Image Input Image
| |
v v
[Image Encoder] [DINOv3 (frozen)]
| |
v v
[Point Map Encoder] image tokens
| (cross-attn)
v |
[VQ Tokenizer] v
| noisy patches --> [Plain DiT] --> point map
v
latent codes
|
v
[Latent Diffusion Model]
(pretrained, then finetuned)
|
v
[Decoder + Tokenizer inverse]
|
v
point map
From tokenized latent diffusion with pretrained priors to direct pixel-space diffusion with a from-scratch Transformer, the core shift is that the field’s assumed prerequisite — compress geometry before you can diffuse — turned out to be a bottleneck, not a foundation.
Expert Assessment
Problem choice: This is a genuine gap, not manufactured. The 3D reconstruction community has drifted toward complexity as a default — every new method adds another encoder, another loss term, another pretrained backbone. PointDiT asks a question worth asking: is any of that actually necessary? The answer is clean and compelling. It sits at an interesting inflection point in the field’s trajectory, where diffusion models for geometry are mature enough that someone can finally strip them down and see what’s load-bearing.
Method maturity: This is clever restraint, not brute force. The insight isn’t a new algorithm — it’s the discipline to remove components and see what happens. The authors resist the temptation to add bells and whistles. That said, the approach does rely heavily on DINOv3’s quality as a conditioning signal; if DINOv3 fails on a domain (e.g., unusual lighting, non-natural scenes), PointDiT likely fails too. The paper doesn’t stress-test this dependency hard enough.
Experimental integrity: Baselines appear fair — they compare against recent latent diffusion methods and hybrid approaches on standard benchmarks. The gains on transparent objects are the most convincing result, since that’s where latent compression would lose the subtle geometric cues that pixel-space methods preserve. However, I’d like to see more ablation on the DINOv3 conditioning: how much of the performance comes from the diffusion architecture vs. simply having a better image encoder? If you plugged DINOv3 into the latent baselines, would the gap close?
Writing quality: The paper is clearly written and mercifully short on jargon for a diffusion paper. The method section is tight. Where they cut corners: the failure mode analysis is thin. When does this approach break? What kinds of scenes or objects fool it? A “Limitations” section with honest examples would elevate this from a strong method paper to a trustworthy one.
Verdict: weak accept — Clean, well-motivated work that makes a real methodological point, but the ablations don’t fully isolate why it works from what it works with.
Takeaways
Three things a practitioner can steal:
-
The “what if we just don’t” test: Before adding a tokenizer, a pretrained backbone, or a complex loss, ask whether the model can learn to operate on raw data from scratch. Sometimes the compression step you assumed was necessary is actually the bottleneck. Run the dumb version first.
-
Frozen conditioning beats fine-tuned conditioning (sometimes): DINOv3 as a frozen feature extractor for cross-attention conditioning is a powerful and underrated pattern. It saves compute during training, avoids catastrophic forgetting, and provides stable gradients. Worth trying in any conditional generation task before reaching for end-to-end finetuning.
-
Pixel-space diffusion is tractable with modern hardware: The implicit assumption that “latent space is necessary for efficiency” may be outdated. With efficient Transformer implementations and patch-based processing, diffusing in the original space is increasingly viable — and the fidelity gains can be substantial for tasks where detail matters.
论文: 2607.02515 作者: Haofei Xu, Rundi Wu, Philipp Henzler, Nikolai Kalischek, Michael Oechsle, Fabian Manhardt, Marc Pollefeys, Andreas Geiger, Federico Tombari, Michael Niemeyer 分类: cs.CV
缺口
现状是这样的:单图3D重建已经做得不错了,但主流方案的架构越来越臃肿。 潜空间扩散方法(比如基于预训练LDM的那些)需要先把原始3D点图压缩成离散的潜码—— 这本身就要求训练一个编码器-解码器的tokenizer——然后扩散模型才能开始工作。 混合方法走了另一条同样复杂的路:堆叠多种专用损失函数,融合不同骨干网络来榨取性能。 两个阵营都隐含一个假设:原始3D点图维度太高、噪声太大,没法直接做扩散。
这篇论文正面挑战了这个假设。 作者问了一个简单的问题:如果我们就是不做这些呢? 一个普通的Vision Transformer直接在像素空间的点图patch上做扩散, 用冻结的DINOv3做条件输入,够不够用?
[问题]
现有3D重建方法 = 复杂混合架构
或带tokenizer的潜空间扩散
|
v
[被挑战的假设]
"原始点图太难直接扩散"
|
v
[方法:PointDiT]
普通ViT + 像素空间扩散
直接处理原始点图patch
以DINOv3 token为条件
从零开始训练
|
v
[证据]
超越潜空间方法
几何结构更锐利
透明物体上更鲁棒
|
v
[结论]
复杂性是不必要的。
简洁取胜。
增量
一句话: 在这篇论文之前,你需要一个tokenizer把3D几何压缩成潜码才能做扩散; 在这篇论文之后,我们知道一个普通Transformer直接在原始点图patch上做扩散—— 不要tokenizer、不要压缩、不要复杂损失——实际上效果更好。
核心机制
PointDiT有三个核心组件,精妙之处在于没有一个是单独来看全新的—— 贡献在于它们的组装方式。
第一条路径是条件输入:一个冻结的DINOv3视觉编码器接收输入图像, 产出一序列图像token。 这些token携带丰富的语义信息——物体边界、表面朝向、材质线索—— 而且不需要任何微调。 它们以交叉注意力的方式注入Transformer。
第二条路径是扩散路径:把地面真值3D点图(逐像素的{x,y,z}坐标图) 切成patch,就像ViT切分图像一样。 这些点图patch直接成为扩散过程腐蚀和去噪的”token”。 没有潜空间压缩,没有VQ-VAE,没有tokenizer—— 原始几何patch直接进入扩散骨干网络。
第三条路径是骨干本身:一个普通的Diffusion Transformer(DiT), 通过自注意力(混合点图中不同空间位置的信息) 和交叉注意力(从DINOv3图像token中提取语义上下文) 来处理带噪声的点图patch。 整个扩散骨干从零开始训练—— 没有预训练的潜空间扩散模型可以借用。
输入图像
|
v
[DINOv3(冻结)] --> 图像token
|
|(交叉注意力)
v
带噪点图patch --> [普通DiT骨干] --> 去噪后点图patch
^ |
| v
[前向扩散] [反向去噪]
| |
真值点图 预测点图
打个比方:这就像联合国的同声传译。 输入图像就是原始发言者——内容丰富、细节繁多,但你需要把它”翻译”成3D。 DINOv3是坐在隔音间里的资深译员:她不变、不被重新训练, 只是实时听取内容并产出语义摘要(图像token)。 DiT是试图从嘈杂无线电信号(损坏的点图patch)中还原完整意思的听众。 在每一步去噪中,听众抬头看一眼译员的输出获取上下文—— “哦,这是一个透明玻璃表面,深度读数在这里会不可靠”—— 然后用这个信息来精化自己的理解。 译员永远不向听众学习;听众永远不直接跟发言者说话。 但整个系统一起运作,产出干净、完整的3D重建。 关键洞见是:听众(DiT)从未在其他任务上预训练过—— 他们从零开始学会倾听,结果反而比从别的任务转行过来的人做得更好。
关键概念
-
像素空间 vs. 潜空间扩散:想象你在修复一张损坏的照片。 潜空间扩散就像先把照片压缩成小缩略图,修复缩略图,再放大回去—— 你省了计算量,但在压缩/解压过程中丢失了细节。 像素空间扩散直接在全分辨率图像上操作。 计算更贵,但你永远不会因压缩而丢失信息。 本文的关键赌注是:对于3D点图,在像素空间操作带来的保真度收益 超过了计算成本——而普通ViT足够高效,让这变得可行。
-
点图Patch:深度图每个像素给你一个数字(距离)。 点图每个像素给你三个数字(3D空间中的x,y,z坐标)—— 它是完整的3D表面,不仅仅是距离场。 “Patch”就是标准的ViT技巧:不把整个点图一次性输入(太贵), 而是把它切成小矩形区域(比如16×16像素), 把每个区域的坐标展平成一个向量,把每个向量当作一个token。 然后Transformer推理这些patch之间的关系。
-
从零开始训练:现在很多扩散论文从在百万图像上预训练的模型 (比如Stable Diffusion)出发做微调。 本文的整个扩散骨干用随机初始化、 仅在3D重建数据上训练。 惊人的是这并没有损害性能——反而有帮助, 因为模型不携带任何来自2D图像生成的包袱, 那些包袱可能与3D几何预测产生冲突。
框架转变
之前(主流方法): 之后(本文方法):
输入图像 输入图像
| |
v v
[图像编码器] [DINOv3(冻结)]
| |
v v
[点图编码器] 图像token(交叉注意力)
| |
v v
[VQ Tokenizer] 带噪patch --> [普通DiT] --> 点图
|
v
潜码
|
v
[潜空间扩散模型]
(预训练后微调)
|
v
[解码器 + Tokenizer逆过程]
|
v
点图
从带tokenizer的潜空间扩散加预训练先验, 到直接的像素空间扩散加从零训练的Transformer, 核心转变是:领域默认的前提——必须先压缩几何才能做扩散—— 原来不是地基,而是瓶颈。
专家评审
选题眼光:这是真实的缺口,不是人造的。 3D重建社区已经默认把复杂性当作理所当然—— 每个新方法都加一个编码器、一个损失项、一个预训练骨干。 PointDiT问了一个值得问的问题:这些真的有必要吗? 答案干净且令人信服。 它处在领域发展轨迹上一个有意思的拐点: 扩散模型用于几何已经成熟到终于可以被拆解、 看看什么是真正承重结构的时候了。
方法成熟度:这是聪明的克制,不是蛮力。 洞见不在于新算法——而在于移除组件然后看结果的纪律。 作者抵抗住了添加花哨功能的诱惑。 不过,方法确实重度依赖DINOv3作为条件信号的质量; 如果DINOv3在某个领域(比如异常光照、非自然场景)失效, PointDiT很可能也跟着失效。 论文对这个依赖性没有做足够深入的压力测试。
实验诚意:基线看起来公平—— 他们在标准benchmark上与近期的潜空间扩散方法和混合方法做了对比。 透明物体上的增益是最有说服力的结果, 因为那里正是潜空间压缩会丢失微妙几何线索的地方。 不过,我想看到更多关于DINOv3条件输入的消融实验: 性能有多少来自扩散架构本身 vs. 仅仅因为用了更好的图像编码器? 如果把DINOv3接入潜空间基线方法,差距会不会缩小?
写作功力:论文写得清晰,对扩散论文来说可贵地少用了术语。 方法部分紧凑。 偷懒的地方:失败模式分析太薄了。 什么时候会失效?什么类型的场景或物体会难倒它? 一个诚实的”局限性”章节配上具体例子, 能把这篇论文从强方法论文提升为值得信赖的论文。
判决:弱接收——干净、动机充分的工作,提出了真实的方法论观点, 但消融实验没有完全隔离”为什么有效”和”跟什么一起有效”。
要点总结
实践者可以从这篇论文中”偷”走三样东西:
-
“如果不做会怎样”测试:在添加tokenizer、预训练骨干或复杂损失之前, 先问模型能不能从零在原始数据上直接学习。 有时候你假设必要的压缩步骤其实是瓶颈。 先跑最笨的版本。
-
冻结条件输入有时胜过微调条件:DINOv3作为冻结特征提取器 提供交叉注意力条件,是一个强大但被低估的模式。 训练时省算力,避免灾难性遗忘,梯度稳定。 在任何条件生成任务中,都值得在端到端微调之前先试试。
-
像素空间扩散在现代硬件上可行:隐含的假设”潜空间对效率是必要的” 可能已经过时了。 有了高效的Transformer实现和基于patch的处理, 在原始空间做扩散越来越现实—— 而且对于细节很重要的任务,保真度的提升可以非常显著。