碎片笔记|AI生成图像溯源方法源码复现经验(持续更新中……)

前言:本篇博客分享一些溯源方法的复现经验,希望能帮助到大家🎉。


1. Close-set Attribution

Repmix

论文信息:RepMix: Representation Mixing for Robust Attribution of Synthesized Images. ECCV, 2022.
开源代码:https://github.com/TuBui/image_attribution

环境配置

配置环境时,imagenet-c库不能使用pip install imagenet-c安装(会报错如下:

    x_start, y_start = np.random.randint(0, frost.shape[0] - 224), np.random.randint(0, frost.shape[1] - 224)
AttributeError: 'NoneType' object has no attribute 'shape'

根据相关经验,正确的安装方式为:打开链接

https://github.com/hendrycks/robustness/tree/master/ImageNet-C

将下述文件全部下载

在这里插入图片描述

然后在上述文件对应的目录下,运行pip install -e .命令进行安装。

代码适配

  • 如果要在其他数据集上运行该代码,只需要按给定格式生成相应的train/val/test.csv文件,再修改csv文件路径即可。

  • 原始的csv文件有三列,分别表示图像路径 / 图像模型类别 / 图像语义类别。如果不需要图像的语义类别,可以将对应值全部设置为0(而非直接删除该列),确保文件的正确读取。

  • 在运行test.py文件时,代码 utils/augment_imagenetc.py'clean': transforms.Compose([transforms.Resize(csize)] + norm) 一行要改为: 'clean': transforms.Compose([transforms.Resize([csize, csize])] + norm),不然会报错如下:

    RuntimeError: stack expects each tensor to be equal size, but got [3, 224, 298] at entry 0 and [3, 254, 224] at entry 1
    

    根据此篇博客,这是因为原始代码只会将图像较短边调整为 224,保持长宽比不变。而我们需要的是将图像尺寸变为224*224,故需对代码进行相应修改。

De-Fake

论文信息:DE-FAKE: Detection and Attribution of Fake Images Generated by Text-to-Image Generation Models. CCS, 2023.
开源代码: https://github.com/zeyangsha/De-Fake

环境配置

无过多要求

代码适配

DNA-Net

论文信息:Deepfake Network Architecture Attribution. AAAI 2022.
开源代码:https://github.com/ICTMCG/DNA-Det

环境配置

无过多要求

代码适配

  1. 如果要在其他数据集上运行该代码,只需要更新位于data/dataset.py下的ImageMultiCropDataset()类即可,确保数据能够正确读取。

  2. 运行 codes/DNA-Det-main/pred_eval.py 时,cm = confusion_matrix(gt_labels, pred_labels, [i for i in range(config.class_num)]) 一行要通过指定参数名称的方式传入参数,不然会报错如下:

    Traceback (most recent call last):
      File "/newdata/proceeding/Attribution/codes/DNA-Det-main/test.py", line 76, in <module>
        print('confusion matrix',cm)
    NameError: name 'cm' is not defined
    

    解决方案:改为cm = confusion_matrix(y_true=gt_labels, y_pred=pred_labels, labels=[i for i in range(config.class_num)])


2. Open-set Attribution

POSE

论文信息:Progressive Open Space Expansion for Open-Set Model Attribution. CVPR, 2023.
开源代码:https://github.com/ICTMCG/POSE

环境配置

代码适配

数据集

OSMA 数据集解压Tip:由于文件较大,推荐使用7z解压,Ubuntu首先使用apt-get install p7zip-full命令安装7z,然后cd切换到zip文件所在目录下,使用7z x name.zip完成解压(7z会自动解压分卷,无需事先手动合并)
尝试过unzip和7z解压方式,均以失败告终,最后选择在本地解压后再上传到服务器。


3. Single-Model Attribution

OCC-CLIP

论文信息:Which Model Generated This Image? A Model-Agnostic Approach for Origin Attribution. ECCV 2024.
开源代码:https://github.com/uwFengyuan/OCC-CLIP

环境配置

  • 代码实际运行时其实不需要environment.yaml中给出的数百个库,所以可以在执行conda create -n name python=3.11新建环境之后按需安装相应的库,节省安装时间和存储成本。

代码适配

⚠️注意:原代码并未使用全部数据进行训练、验证和测试,所以需修改dataloader.py中的data_label()函数,并更新dataset目录下用到的json文件。

数据集

这个工作还提出了一个新数据集,由4个真实图像集和9个生成模型图像集构成,共301688张图像,各类别图像数量如下表。
在这里插入图片描述
附:递归统计当前目录下全部文件数量命令:find ./ -type f | wc -l


LatentTracer

论文信息:How to Trace Latent Generative Model Generated Images without Artificial Watermark? ICML, 2024.
开源代码:https://github.com/ZhentingWang/LatentTracer

环境配置

代码适配


后记:后续将与大家分享关于如何设计实验,以实现在同一个数据集上横向比较上述三种不同类型溯源方法的一些个人见解。


参考链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Meilinger_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值