Update produce_gif_script.py
Browse files- produce_gif_script.py +46 -0
produce_gif_script.py
CHANGED
@@ -49,6 +49,52 @@ pd.DataFrame(list(product(*[reference_video_list, prompt_list])))[[1, 0]].rename
|
|
49 |
|
50 |
!python produce_gif_script.py xiangling_video_seed.csv "svjack/GenshinImpact_XL_Base" xiangling_gif_dir \
|
51 |
--num_frames 16 --temp_folder temp_frames --seed 0 --controlnet_conditioning_scale 0.3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
'''
|
53 |
|
54 |
import sys
|
|
|
49 |
|
50 |
!python produce_gif_script.py xiangling_video_seed.csv "svjack/GenshinImpact_XL_Base" xiangling_gif_dir \
|
51 |
--num_frames 16 --temp_folder temp_frames --seed 0 --controlnet_conditioning_scale 0.3
|
52 |
+
|
53 |
+
import re
|
54 |
+
def insert_content_in_string(insert_content, character_name, gender=None):
|
55 |
+
"""
|
56 |
+
在原始字符串中特定位置插入内容。
|
57 |
+
:param insert_content: 要插入的内容
|
58 |
+
:param character_name: 角色名称
|
59 |
+
:param gender: 性别(可选,可以是 "1boy" 或 "1girl")
|
60 |
+
:return: 修改后的字符串
|
61 |
+
"""
|
62 |
+
# 根据 character_name 和 gender 生成 original_string
|
63 |
+
original_string = f"solo,{character_name}\(genshin impact\),{gender if gender else '1boy'},highres,"
|
64 |
+
original_string = f"{gender if gender else '1boy'},{character_name}, masterpiece, white lab coat, red tie"
|
65 |
+
# 根据 character_name 生成 target_pattern
|
66 |
+
target_pattern = re.escape(character_name)
|
67 |
+
# 插入内容
|
68 |
+
modified_string = re.sub(target_pattern, r'\g<0>' + insert_content, original_string)
|
69 |
+
return original_string ,modified_string
|
70 |
+
|
71 |
+
from datasets import load_dataset
|
72 |
+
character_name = "Makise Kurisu"
|
73 |
+
gender = "1girl" # 可选参数
|
74 |
+
prompt_list = load_dataset("svjack/daily-actions-en-zh")["train"].to_pandas()["en"].map(
|
75 |
+
lambda x: ", {}".format(x)
|
76 |
+
).map(
|
77 |
+
lambda insert_content: insert_content_in_string(insert_content, character_name, gender)[-1]
|
78 |
+
).dropna().drop_duplicates().values.tolist()
|
79 |
+
print(len(prompt_list))
|
80 |
+
|
81 |
+
import pandas as pd
|
82 |
+
import pathlib
|
83 |
+
reference_video_list = pd.Series(
|
84 |
+
list(pathlib.Path("video-dataset-Lily-Bikini-rm-background-organized").rglob("*.mp4"))
|
85 |
+
).map(str).values.tolist()
|
86 |
+
print(len(reference_video_list))
|
87 |
+
|
88 |
+
from itertools import product
|
89 |
+
pd.DataFrame(list(product(*[reference_video_list, prompt_list])))[[1, 0]].rename(
|
90 |
+
columns = {
|
91 |
+
1: "prompt",
|
92 |
+
0: "input_video"
|
93 |
+
}
|
94 |
+
).to_csv("Makise_Kurisu_video_seed.csv", index = False)
|
95 |
+
|
96 |
+
!python produce_gif_script.py Makise_Kurisu_video_seed.csv "cagliostrolab/animagine-xl-3.1" Makise_Kurisu_gif_dir \
|
97 |
+
--num_frames 16 --temp_folder temp_frames --seed 0 --controlnet_conditioning_scale 0.3
|
98 |
'''
|
99 |
|
100 |
import sys
|