华科大水印demo,集成白盒水印

liyan 1d4341fb9e 解决vgg输入参数大小问题 1 mesiac pred
block 1d4341fb9e 解决vgg输入参数大小问题 1 mesiac pred
external_pkg fdcd3a9216 修改安装外部安装包说明 4 mesiacov pred
model 1d4341fb9e 解决vgg输入参数大小问题 1 mesiac pred
tool 281dd74b32 去除无关代码 5 mesiacov pred
.gitignore a8622f433c 添加提交忽略文件 6 mesiacov pred
README.md 0b5d52cb52 修改分支说明 4 mesiacov pred
bash_output.sh 5aea0138de 添加项目初始文件 6 mesiacov pred
bash_train.sh b818fd1a84 去除wantdb相关引用 4 mesiacov pred
bash_watermarking.sh 5aea0138de 添加项目初始文件 6 mesiacov pred
export_onnx.py c129292a0f 修改onnx文件导出逻辑 2 mesiacov pred
export_trt_record 5aea0138de 添加项目初始文件 6 mesiacov pred
gradio_start.py 5aea0138de 添加项目初始文件 6 mesiacov pred
gunicorn_config.py 5aea0138de 添加项目初始文件 6 mesiacov pred
predict_onnx.py 5aea0138de 添加项目初始文件 6 mesiacov pred
predict_pt.py dc0ab5fffc 修改训练预测数据集引用 4 mesiacov pred
predict_pt_embed.py dc0ab5fffc 修改训练预测数据集引用 4 mesiacov pred
predict_trt.py 5aea0138de 添加项目初始文件 6 mesiacov pred
requirement 5aea0138de 添加项目初始文件 6 mesiacov pred
train.py 1d4341fb9e 解决vgg输入参数大小问题 1 mesiac pred
train_embed.py b818fd1a84 去除wantdb相关引用 4 mesiacov pred

README.md

pytorch图片分类训练框架

代码兼容性较强,使用的是一些基本的库、基础的函数
在argparse中可以选择使用wandb,能在wandb网站中生成可视化的训练过程

分支说明

  • master分支,华科大提供默认代码
  • demo分支,废弃
  • whitebox_wm_integrate分支,包含图像分类模型定义、模型训练、模型验证、模型水印训练、模型水印验证

1,环境

torch:https://pytorch.org/get-started/previous-versions/

pip install timm tqdm wandb opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple

2,数据格式

├── 数据集路径:data_path
    └── image:存放所有图片
    └── train.txt:训练图片的绝对路径(或相对data_path下路径)和类别号,
        (如-->image/mask/0.jpg 0 2<--表示该图片类别为0和2,空类别图片无类别号)
    └── val.txt:验证图片的绝对路径(或相对data_path下路径)和类别号
    └── class.txt:所有的类别名称

3,run.py

模型训练时运行该文件,argparse中有对每个参数的说明

4,predict_pt.py

使用训练好的pt模型预测

5,export_onnx.py

将pt模型导出为onnx模型

6,predict_onnx.py

使用导出的onnx模型预测

7,export_trt_record

文档中有onnx模型导出为tensort模型的详细说明

8,predict_trt.py

使用导出的trt模型预测

9,gradio_start.py

用gradio将程序包装成一个可视化的页面,可以在网页可视化的展示

10,flask_start.py

用flask将程序包装成一个服务,并在服务器上启动

11,flask_request.py

以post请求传输数据调用服务

12,gunicorn_config.py

用gunicorn多进程启动flask服务:gunicorn -c gunicorn_config.py flask_start:app

模型注意事项: