masktof代码复现

官方指南:

1. 要求:

  • 在 Ubuntu x64 机器上使用 PyTorch 1.7.0 开发
  • 简述要求/requirements.txt
  • 完整的冻结环境可以在中找到/conda_env.txt,但其中许多库对于运行此代码来说并不是必需的

2. 数据:

  • 下载test地址additional4D Light Field Benchmark
  • 将样品直接放入/data
  • 确认 .txt 文件与/filenames数据结构匹配(如果添加或重新组织数据,请更新这些文件)
  • 可选:从此驱动器链接下载预训练的网络检查点
  • 提取pretrained.zip\nets\pretrained
  • 可选:从此驱动器链接下载“条形码”掩码
  • 提取barcode_masks.zip\utils\barcode_masks

3. 训练:

  • bash debug.sh如果所有必备库都能正常运行,则应该像运行调试示例一样简单
  • 输出将保存至checkpoint_dir=checkpoints/debug/
  • --init mask_pattern_name设置初始掩码迭代,在本例中为具有均值和标准分布的gaussian_circles1.5,0.75高斯圆图案1.50.75
  • --use_net是联合训练细化/重构网络的标志,如论文中所述
  • 更多论据和说明可参见/train.py

4. 重建:

该笔记本reconstruction.ipynb包括一个交互式演示,用于从检查点文件夹加载网络、可视化掩模结构、模拟幅度测量和执行深度重建。

我的复现过程:

1. 报错:发生异常: RuntimeError Ninja is required to load C++ extensions

问了deepseek回答如下:

确认系统级Ninja是否安装

  • Python包 ninja ≠ 系统工具 Ninja
    通过 pip install ninja 安装的是Python接口,而某些C++扩展依赖的是系统级的Ninja构建工具。
  • 安装系统级Ninja
    • Linux (Debian/Ubuntu)
      sudo apt install ninja-build
    • macOS (Homebrew)
      brew install ninja
    • Windows
      从 Ninja官网 下载二进制,将 ninja.exe 放入系统路径(如 C:\Windows\)。

看来还是要执行这一步安装,需要管理员权限:sudo apt install ninja-build

2. 报错: args = parser.parse_args()这里SystemExit: 2‘

因为我是在vscode进行debug的,所以没有输入参数。下面需要对参数再来代码里进行手动赋值。

parser.add_argument("--checkpoint_dir", default="checkpoints/4DLFB", type=str, required=True, help="Directory to save model checkpoints and logs") 缺少checkpoints,原github给了链接,下载下来。这里有个疑问,代码里地址是checkpoints/,指南里面却说放在net/路径下,先放在这个路径下了,把代码里地址改为这个,后面需要注意有无报错。下载道德模型如下,有5个,分别对应5个mask初始化模型。

这个时候还是报错SystemExit: 2,问了DS,发现如果使用代码调试不可以使用required=True,--checkpoint_dir 参数被标记为 required=True,但未在命令行中显式提供,就会报错。删除后可以继续进行调试。

3. 报错[Errno 2] No such file or directory: 'filenames/4DLFB_train.txt'

原理是txt文件里保存了data路径下的数据集,但是data路径下没有放,现在下数据集,指南上说只需要test 和 additional,未免以后需要更多数据,我下载了全部场景数据,共3.2G,下载用了10分钟左右。把下好的数据根据txt的内容放到data路径下。

上传完毕后继续执行,需要再改一些参数pretrained_net,use_net,因为我想使用已有模型。最后由于显存不够,batch_size由12个改到了2个才开始跑,先跑通试下效果,日志打出来是下面这样:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值