cang-ying/video-ai-system/tools/crop_watermark.py
鉴影 ICE-GL-CA001 8c164dd6f7 D181 · 耳耳蛋全天经验归档 · 深海迷航EP01①~⑩完成+m01+m02视频
铁律:
- ④重写为白名单/黑名单机制 (今日4次违规)
- ⑤新增 BREAKDOWN回验协议
- ⑥新增 管线不容跳步

核心经验:
- 图片+视频混合管线路线验证
- ENV底板法 (i2i→i2v)
- 提示词工程: 工业术语+禁人称词+负面约束
- CHAR真人检测绕过 (blur公式)
- FFmpeg xfade拼接方法
- Seedance 2.0 参数 (9:16, 4-15s)

新增文件:
- eererdan/experience/EED-EXPER-001~010
- protocols/BREAKDOWN-VERIFY.hdlp
- deep-sea-voyage/STORYBOARD-EP01.hdlp (Pro版26→10镜)
- deep-sea-voyage/PROMPTS-EP01.hdlp
- deep-sea-voyage/DIRECTOR-ENCODING-EP01.hdlp
- tools/jimeng3-gen.js, run_storyboard.js, run_prompts.js, run_adapt.js, run_gen.js, crop_watermark.py
- lib/seedream.py (支持 Seedream 3/4/5)
- outputs/ENV-*-v5, PROP-* (6张定稿资产)
- outputs/videos/M01-v2.mp4, M02.mp4

下次继续: M03~M10 (9:16竖屏)
2026-07-10 21:18:49 +08:00

43 lines
1.1 KiB
Python

# 批量裁切AI水印
# D181 · 2026-07-10 · 耳耳蛋签发
from PIL import Image
import os
OUT_DIR = os.path.join(os.path.dirname(__file__), '..', 'projects', 'deep-sea-voyage', 'outputs')
OUT_DIR = os.path.abspath(OUT_DIR)
FILES = [
'ENV-001-crew-quarters.png',
'ENV-002-hatch-window.png',
'PROP-001-tool-bag.png',
'PROP-002-id-badge.png',
'PROP-003-pipe-wrench.png',
'PROP-004-flashlight.png',
]
# Seedream/ImageGen 水印在右下角,裁底部 100px 确保干净
CROP_BOTTOM = 100
for fname in FILES:
fpath = os.path.join(OUT_DIR, fname)
if not os.path.exists(fpath):
print(f'{fname} 不存在,跳过')
continue
img = Image.open(fpath)
w, h = img.size
new_h = h - CROP_BOTTOM
# 裁掉底部水印区域
cropped = img.crop((0, 0, w, new_h))
# 备份原图
bak = fpath.replace('.png', '-watermarked.png')
img.save(bak)
# 保存裁切后的图
cropped.save(fpath)
print(f'{fname}: {w}x{h}{w}x{new_h} | 备份: {os.path.basename(bak)}')
print('\n🎬 全部裁切完成!')