Ruxx Tag Companion Script (RTCS)
详情
下载文件
关于此版本
模型描述
此脚本专为配合 Ruxx 的 Rule34 下载器使用而编写!
直入主题:此脚本会将使用 Ruxx 下载图片时生成的标签主文件,拆分为多个独立的文本文件,文件名与对应的图片文件名一致。这有助于在训练 LoRA/模型时获得极为精准的标签,而无需担心虚假标签的干扰。
如果文件夹中存在任何 MP4 或 GIF 文件,脚本将运行一个(非常低效且耗时的)算法,将它们拆分为独立帧,并为每个帧图像生成对应的标签文件副本,便于训练使用。
以下是 ChatGPT 提供的使用此脚本的逐步指南(基于我向其发送代码后所得):
环境设置:
确保您的系统已安装 Python。
安装所需的 Python 包:
os、re、cv2、numpy、imageio、pathlib和concurrent.futures。
将脚本放入文件夹:
- 将此脚本保存在包含您的媒体文件(图片、视频、GIF)的文件夹中。
运行脚本:
打开您的终端或命令提示符。
导航至包含脚本的文件夹。
输入
python [脚本名称].py运行脚本,将[脚本名称]替换为您的脚本文件名。
脚本执行流程:
脚本会自动处理文件夹中的 GIF 文件,将其转换为 MP4 格式。
接着查找并处理视频文件(如
.mp4、.avi、.mkv等格式),根据预设条件(如清晰度和帧间变化)提取特定帧。脚本会搜索特定的文本文件(标签文件),并使用正则表达式提取和重新格式化其内容。
函数详情:
find_image_with_rx_value(rx_value):查找符合特定命名模式的图片。extract_frames_with_ffmpeg(video_path, skip_frames, downsample_factor):根据清晰度和与前一帧的差异,从视频文件中提取并保存帧。process_and_delete_video(video_filename):处理视频文件,然后删除它。separate_and_delete_text_file(input_filename):处理标签文本文件,将其与对应图片关联,生成新的文本文件,然后删除原始文件。convert_gif_to_mp4(gif_path):将 GIF 文件转换为 MP4 格式。process_and_delete_gifs():处理文件夹中所有 GIF 文件,将其转换为 MP4 并删除原始 GIF。auto_detect_tags_file():自动检测目录中的特定标签文本文件。
输出结果:
脚本会在同一目录下生成新文件(如从视频提取的帧、由 GIF 转换的 MP4、新的标签文本文件)。
原始视频和 GIF 文件在处理完成后会被删除。
