Lama:《Resolution-robust Large Mask Inpainting with Fourier Convolutions》训练、推理实战记录

记录一下Lama模型的训练、infe踩坑,以及如何更改预设的mask生成方式。
一、环境
简单提一下,一定要按照作者给的requirements.txt里的库版本安装,hydra-core和pytorch-lightning最新版本在此项目代码上均会报错无法运行。

二、预训练模型微调
lama的训练全部是以配置文件.yaml的方式进行的,所以针对不同数据集的预训练模型所使用的yaml也是不同的。总体上作者是在PLACES和CelebA上进行了预训练,同时也包含了Big-Lama、Lama-fourier等多种模型细节的配置。就以在Places-Challenge效果最好的Big-Lama为例,在预训练权重上使用自己的数据和mask进行微调。
1、定义自己的mask生成方式
假如训练中不想使用原本预设的mask生成方式,想要根据自己的任务进行生成(例如在特定位置以特定形状进行生成mask)。
在saicinpainting/training/data/masks.py中首先参照作者方式构建自己的mask生成类。例如RandomSuperresMaskGenerator类是执行make_random_superres_mask函数返回一个矩阵mask,代表覆盖区域。
在这里插入图片描述

之后在同文件中的get_mask_generator函数中增添自己的类对应的kind。
在这里插入图片描述

最后在saicinpainting/training/data/datasets.py的make_default_train_dataloader函数中通过指定get_mask_generator对应的kind参数实现自定义mask类的调用。这个在训练过程中可以在config中指定
2、数据准备
在官方仓库的readme中,根据Train and Eval下的create your data顺序进行即可。其中不一定非要使用bin/gen_mask_dataset.py来进行数据生成,完全可以使用任何自定义的脚本,只要最后形成相同的文件目录和对应文件即可。
3、train
原本作者的big-lama预训练权重中缺少了discriminitor的参数,且有部分参数冗余,所以直接一步到位按如下链接下载https://disk.yandex.ru/d/wJ2Ee0f1HvasDQ/big-lama-with-discr。
之后只需要更改config.yaml对应的各种路径即可实现训练。

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
big-lama.zip是一个文件压缩包,包括了一个名为big-lama的文件。通常,使用.zip扩展名的文件是为了将多个文件或文件夹组合成一个单独的文件。压缩文件可以减小文件的大小,方便传输和存储。使用压缩文件可以节省磁盘空间,并且在将文件发送给其他人时可以更快地上传或下载。 big-lama.zip可能是一个包含大量数据或文件的文件压缩包。通过将这些文件压缩到一个压缩包中,可以更方便地进行管理和传输。因为big-lama.zip是压缩文件,所以我们需要一个解压软件来解压缩它。在解压缩后,我们将能够访问big-lama文件。 在解压big-lama.zip之前,请确保您具有可解压缩该文件的软件。一些常见的解压缩软件包括WinRAR、7-Zip和WinZip等。如果您没有这些软件,您可以在互联网上找到并下载它们。 解压big-lama.zip的步骤是:首先,找到big-lama.zip文件所在的位置。然后,右键单击该文件,并选择打开或解压缩(具体选项根据您所使用的解压软件而异)。在解压缩完成后,您将会看到一个文件名为big-lama的文件在您选择的目标文件夹中。 通过解压big-lama.zip文件,我们可以访问和使用big-lama文件中的内容。请注意,文件扩展名可能会根据文件类型而有所不同,例如:.txt表示文本文件,.jpg表示图像文件等。因此,您可能需要选择适当的应用程序来打开big-lama文件,以查看其内容。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值