Spaces:
Build error
Build error
Download scratch/process_green_background.py from HuuDatLego/UI-VieNeu: direct link, hf CLI and curl.
- Browser
- Download file 1.52 kB
-
https://huggingface.co/spaces/HuuDatLego/UI-VieNeu/resolve/main/scratch/process_green_background.py
- Command line
-
hf download hf://spaces/HuuDatLego/UI-VieNeu/scratch/process_green_background.py
-
curl -L -o process_green_background.py https://huggingface.co/spaces/HuuDatLego/UI-VieNeu/resolve/main/scratch/process_green_background.py
1.52 kB
| import os | |
| from PIL import Image | |
| # Cấu hình đường dẫn | |
| input_dir = "static/characters" | |
| output_dir = "static/characters_green" | |
| backup_dir = "static/characters_backup" | |
| # Tạo các thư mục nếu chưa có | |
| os.makedirs(output_dir, exist_ok=True) | |
| os.makedirs(backup_dir, exist_ok=True) | |
| print(f"Starting to process images from {input_dir}...") | |
| green_color = (0, 255, 0) # Mã màu xanh lá chuẩn (RGB) | |
| files = [f for f in os.listdir(input_dir) if f.endswith(".png")] | |
| total = len(files) | |
| for i, filename in enumerate(files): | |
| input_path = os.path.join(input_dir, filename) | |
| output_path = os.path.join(output_dir, filename) | |
| try: | |
| with Image.open(input_path) as img: | |
| # 1. Chuyển sang RGBA nếu chưa có | |
| img = img.convert("RGBA") | |
| # 2. Tạo một nền xanh thuần túy cùng kích thước | |
| background = Image.new("RGB", img.size, green_color) | |
| # 3. Dán ảnh nhân vật lên nền xanh (dùng chính kênh alpha của ảnh làm mask) | |
| background.paste(img, (0, 0), img) | |
| # 4. Lưu lại thành phẩm | |
| background.save(output_path, "PNG") | |
| print(f"[{i+1}/{total}] Processed: {filename}") | |
| except Exception as e: | |
| print(f"[!] Error processing {filename}: {e}") | |
| print(f"\n--- DONE! ---") | |
| print(f"Total: {total} images saved to: {output_dir}") | |
| print(f"Note: Original files are untouched. Please check characters_green folder.") | |