K-Planes代码记录

随记

原文 K-Planes: Explicit Radiance Fields in Space, Time, and Appearance,又要换baseline,可是效果不好能怎么办呢,我可不可以发疯。k-planes的代码又是非常工程琐碎的,大佬的代码果然不顾小白死活。随便记录下整个过程。

代码记录

main.py

主要用于:加载config文件,data,初始化等

复制代码
loda_data() # 加载数据
init_trainer()	# 初始化模型(包括k-planes loss function等各种)
load_model()

type有几个参数可选,其中phototourism等价于NeRF-W ,video相当于动态场景 ,其他是静态 ;从line 70进入各种初始化步骤。

所有参数都初始化完毕后,开始训练

复制代码
line 160      trainer.train()

base_train.py

一系列参数的初始化

还有损失函数的计算和优化

lowran_model.py

经过一系列跳转,在这个文件下进行KPlaneField,KPlaneDensityField,ProposalNetworkSampler等一系列采样和plane的生成和初始化操作,还有forward()函数,插值,query_rgb query_density。这里我只关心k-plane生成

kplane_field.py

  1. 生成并初始化K-planes

最后生成以下k-planes:

  1. Init appearance code-related parameters等价于NeRF-W(略)

  2. Init decoder params: 对方向进行编码

  3. 初始化decoder

这里有两种选择,使用论文中的线性解码器还是MLP,直接看else line189-217

video_trainer.py

其他的初始化都没那么重要,第二重要的loss,k-plane添加了很多正则化的loss,就在这个函数里进行初始化

需要注意的点

  1. pytorch提供的插值函数需要将x归一化的-1,1之间
  2. 损失函数的计算

记录一下求ray还是什么的区别,暂时没有很重要。不过原文里的这部分好像被删掉了,这里是在B站up那里截的图。

相关推荐
Rocky Ding*17 小时前
深入浅出完整解析FLUX.2、Seedream(即梦)、Z-image、Qwen-Image、GLM-Image核心基础知识
论文阅读·人工智能·深度学习·机器学习·aigc·扩散模型·ai-native
m4Rk_18 小时前
【论文阅读】Agent 记忆机制(91):THEANINE——不删除过时记忆,让 Agent 记住事情是如何变化的
论文阅读·人工智能·学习·开源·github
Rocky Ding*1 天前
深度解析LlamaGen核心基础知识
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·llamagen
a puppy slide 葱2 天前
ICLR | 2019 | DARTS:可微架构搜索
论文阅读·darts·神经网络架构搜索
m4Rk_2 天前
【论文阅读】Agent 记忆机制(90):HyperMem——用超图建模长期记忆中的高阶关联
论文阅读·人工智能·学习·开源·github
m4Rk_3 天前
【论文阅读】Agent 记忆机制(89):PersonaAgent——构建 Memory、Persona 与 Action 的持续反馈闭环
论文阅读·人工智能·学习·开源·github
Rocky Ding*3 天前
MaskGIT技术深度解析:图像生成如何从逐Token排队走向掩码并行预测
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·maskgit
Rocky Ding*3 天前
Muse技术深度解析:用掩码并行生成图像,速度、语义与编辑能力如何同时成立
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·muse
xx_xxxxx_4 天前
论文阅读-RoTTA
论文阅读·人工智能·深度学习·机器学习
Rocky Ding*4 天前
GPT-6.1 Sol大模型深度解析
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·gpt-6.1 sol