Portrait Shadow Manipulation 项目使用教程
1. 项目的目录结构及介绍
portrait-shadow-manipulation/
├── README.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── datasets.py
├── example.txt
├── foreign_syn.ipynb
├── mkdataset.py
├── mkfilelist.py
├── utils.py
├── input/
│ ├── 000.png
│ ├── 001.png
│ └── ...
├── input_mask_ind/
│ ├── 000_0.png
│ ├── 000.txt
│ ├── 001_0.png
│ ├── 001_1.png
│ ├── 001.txt
│ └── ...
└── silhouette/
└── ...
目录结构介绍
- README.md: 项目的基本介绍和使用说明。
- CODE_OF_CONDUCT.md: 项目的行为准则。
- CONTRIBUTING.md: 贡献指南。
- LICENSE: 项目的开源许可证。
- datasets.py: 构建训练数据生成计算图的脚本。
- example.txt: 训练示例文件。
- foreign_syn.ipynb: Jupyter Notebook 文件,包含整个合成过程的演示。
- mkdataset.py: 离线数据生成脚本,将生成的图像对保存到磁盘。
- mkfilelist.py: 生成训练/评估/测试 txt 文件的脚本。
- utils.py: 包含颜色抖动、次表面散射近似、空间变化模糊和每像素变化等合成步骤的实用函数。
- input/: 包含没有外来阴影但可能包含面部阴影的肖像图像。
- input_mask_ind/: 包含每个面部的分割和边界框,存储在 txt 文件中。
- silhouette/: 存储随机选择的轮廓图像,用于生成阴影。
2. 项目的启动文件介绍
项目的启动文件主要是 mkdataset.py 和 mkfilelist.py。
mkdataset.py
该脚本用于离线生成图像对,并将生成的图像对保存到磁盘。使用方法如下:
python3 mkdataset.py \
--mode train \
--trainwildpaths $[your_parent_path]/train.txt \
--silhouette_paths $[your_parent_path]/eval.txt \
--out_dir $[your_parent_path]/shadow_data
mkfilelist.py
该脚本用于生成训练/评估/测试 txt 文件。使用方法如下:
python3 mkfilelist.py \
--image_base_paths $[your_parent_path]/input \
--silhouette_paths $[your_parent_path]/silhouette \
--file_types png \
--output_dir $[your_parent_path]/test.txt
3. 项目的配置文件介绍
项目中没有明确的配置文件,但可以通过命令行参数在 mkdataset.py 和 mkfilelist.py 中进行配置。
mkdataset.py 配置参数
--mode: 模式选择,可以是train或eval。--trainwildpaths: 训练 txt 文件路径。--silhouette_paths: 轮廓图像路径。--out_dir: 输出目录路径。
mkfilelist.py 配置参数
--image_base_paths: 输入图像基础路径。--silhouette_paths: 轮廓图像路径。--file_types: 文件类型,例如png。--output_dir: 输出目录路径。
通过这些配置参数,用户可以根据自己的需求生成训练数据或测试数据。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



