This commit is contained in:
xsl
2026-07-17 22:13:56 +08:00
parent 2606aca7c5
commit b2738fba7d
28 changed files with 126 additions and 126 deletions
+12 -12
View File
@@ -8,8 +8,8 @@
3. 串行执行,记录每个发型成功/失败
用法:
cd /home/xsl/change_hair/project/hair_service_sd
python /home/xsl/change_hair/batch_train_hairstyles.py --src /home/xsl/change_hair/hair_type_images --gender girl [--only 圆-心形] [--start-from 心形-心形]
cd /home/ubuntu/change_hair/project/hair_service_sd
python /home/ubuntu/change_hair/batch_train_hairstyles.py --src /home/ubuntu/change_hair/hair_type_images --gender girl [--only 圆-心形] [--start-from 心形-心形]
注意:
- 中文 hair_id 直接用文件名(去扩展名)作为 ID
@@ -24,14 +24,14 @@ import argparse
import subprocess
from datetime import datetime
SRC_DEFAULT = "/home/xsl/change_hair/hair_type_images"
WORK_DIR = "/home/xsl/change_hair/data/batch_train_inputs"
LOG_FILE = "/home/xsl/change_hair/data/batch_train_log.txt"
TRAIN_SCRIPT = "/home/xsl/change_hair/train_hairstyle_full.py"
HAIR_SERVICE_DIR = "/home/xsl/change_hair/project/hair_service_sd"
LOCK_FILE = "/home/xsl/change_hair/data/batch_train.pid"
DONE_FILE = "/home/xsl/change_hair/data/batch_train_done.txt" # 已完成发型清单(断点续跑)
LORA_DIR = "/home/xsl/change_hair/data/train_material" # LoRA 输出根目录
SRC_DEFAULT = "/home/ubuntu/change_hair/hair_type_images"
WORK_DIR = "/home/ubuntu/change_hair/data/batch_train_inputs"
LOG_FILE = "/home/ubuntu/change_hair/data/batch_train_log.txt"
TRAIN_SCRIPT = "/home/ubuntu/change_hair/train_hairstyle_full.py"
HAIR_SERVICE_DIR = "/home/ubuntu/change_hair/project/hair_service_sd"
LOCK_FILE = "/home/ubuntu/change_hair/data/batch_train.pid"
DONE_FILE = "/home/ubuntu/change_hair/data/batch_train_done.txt" # 已完成发型清单(断点续跑)
LORA_DIR = "/home/ubuntu/change_hair/data/train_material" # LoRA 输出根目录
def acquire_lock():
@@ -125,7 +125,7 @@ def run_one(hair_id, src_img, gender, py, done_set, force=False):
log(f" 调用: {' '.join(cmd[:2])} ... --hair-id {hair_id}")
try:
# 子进程输出实时写到日志文件
proc_log = os.path.join("/home/xsl/change_hair/data", f"subprocess_{hair_id}.log")
proc_log = os.path.join("/home/ubuntu/change_hair/data", f"subprocess_{hair_id}.log")
with open(proc_log, "w", encoding="utf-8") as f:
r = subprocess.run(
cmd, cwd=HAIR_SERVICE_DIR,
@@ -152,7 +152,7 @@ def main():
ap = argparse.ArgumentParser(description="批量训练发型")
ap.add_argument("--src", default=SRC_DEFAULT, help="原图目录")
ap.add_argument("--gender", default="girl", choices=["boy", "girl"])
ap.add_argument("--py", default="/home/xsl/miniconda3/envs/my_hair/bin/python",
ap.add_argument("--py", default="/home/ubuntu/miniconda3/envs/my_hair/bin/python",
help="python 解释器")
ap.add_argument("--only", default=None, help="只训练指定 hair_id(调试用)")
ap.add_argument("--start-from", default=None,