Batch process images for marketing. Use when: resizing images for social media; compressing images for web; removing backgrounds; adding watermarks; converting formats to WebP; optimizing for Core Web Vitals
Scanned 9/22/2026
Install to Claude Code
npx -y skills add NVlabs/Skill2Env --skill image-batch --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Image Batch?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/nvlabs-image-batch)More formats (shields.io, HTML) on the badges page.
---
name: image-batch
description: "Batch process images for marketing. Use when: resizing images for social media; compressing images for web; removing backgrounds; adding watermarks; converting formats to WebP; optimizing for Core Web Vitals"
license: MIT
metadata:
author: ClawFu
version: 1.0.0
mcp-server: "@clawfu/mcp-skills"
---
# Image Batch Processing
> Automate repetitive image tasks using Pillow and rembg - resize, compress, remove backgrounds, and watermark hundreds of images in seconds.
## When to Use This Skill
- **Social media prep** - Resize images for multiple platforms at once
- **Website optimization** - Compress and convert to WebP for faster loading
- **Product photos** - Remove backgrounds, add consistent styling
- **Brand protection** - Add watermarks to marketing assets
- **Batch conversion** - Convert legacy formats to modern ones
## What Claude Does vs What You Decide
| Claude Does | You Decide |
|-------------|------------|
| Structures video workflow | Final creative vision |
| Suggests shot compositions | Equipment selection |
| Creates storyboard templates | Brand aesthetics |
| Generates script frameworks | Final approval |
| Identifies technical requirements | Budget allocation |
## Dependencies
```bash
pip install Pillow rembg click
# For GPU-accelerated background removal:
# pip install rembg[gpu]
```
## Commands
### Resize Images
```bash
python scripts/main.py resize ./images/ --width 1200
python scripts/main.py resize ./images/ --format instagram # 1080x1080
python scripts/main.py resize ./images/ --format linkedin # 1200x627
```
### Compress Images
```bash
python scripts/main.py compress ./images/ --quality 80
python scripts/main.py compress ./images/ --max-size 500 # Max 500KB
```
### Remove Background
```bash
python scripts/main.py remove-bg photo.jpg
python scripts/main.py remove-bg ./products/ --output ./transparent/
```
### Add Watermark
```bash
python scripts/main.py watermark ./images/ --logo logo.png --position bottom-right
python scripts/main.py watermark ./images/ --text "© 2024 Company" --opacity 0.3
```
### Convert Format
```bash
python scripts/main.py convert ./images/ --format webp
python scripts/main.py convert ./images/ --format avif --quality 80
```
## Examples
### Example 1: Prepare Product Images for E-commerce
```bash
# Remove backgrounds
python scripts/main.py remove-bg ./raw-products/ --output ./transparent/
# Resize to standard size
python scripts/main.py resize ./transparent/ --width 1000 --height 1000 --fit contain
# Compress for web
python scripts/main.py compress ./transparent/ --quality 85 --format webp
# Output: ./transparent/*.webp (optimized, transparent background)
```
### Example 2: Social Media Image Kit
```bash
# Create multiple sizes from one source
python scripts/main.py resize hero-image.jpg --format instagram --output hero_ig.jpg
python scripts/main.py resize hero-image.jpg --format linkedin --output hero_li.jpg
python scripts/main.py resize hero-image.jpg --format twitter --output hero_tw.jpg
python scripts/main.py resize hero-image.jpg --format facebook --output hero_fb.jpg
# Or batch process entire folder for one platform
python scripts/main.py resize ./campaign-images/ --format instagram --output ./instagram/
```
### Example 3: Website Image Optimization
```bash
# Convert all images to WebP
python scripts/main.py convert ./website-images/ --format webp --quality 80
# Ensure no image exceeds 200KB
python scripts/main.py compress ./website-images/ --max-size 200
# Results in 60-80% smaller file sizes
```
## Social Media Format Presets
| Format | Dimensions | Aspect Ratio | Use Case |
|--------|------------|--------------|----------|
| `instagram` | 1080x1080 | 1:1 | Feed posts |
| `instagram-story` | 1080x1920 | 9:16 | Stories/Reels |
| `linkedin` | 1200x627 | 1.91:1 | Link previews |
| `linkedin-post` | 1200x1200 | 1:1 | Feed posts |
| `twitter` | 1200x675 | 16:9 | Cards |
| `facebook` | 1200x630 | 1.91:1 | Link previews |
| `pinterest` | 1000x1500 | 2:3 | Pins |
| `youtube` | 1280x720 | 16:9 | Thumbnails |
## Fit Modes
| Mode | Behavior |
|------|----------|
| `cover` | Fill area, crop excess (default) |
| `contain` | Fit inside, add padding |
| `stretch` | Distort to fit exactly |
| `crop` | Smart crop focusing on subject |
## Output Formats
| Format | Best For | Compression |
|--------|----------|-------------|
| `webp` | Web images | 25-35% smaller than JPEG |
| `avif` | Modern browsers | 50% smaller than JPEG |
| `jpg` | Photos, gradients | Lossy, universal |
| `png` | Transparency, graphics | Lossless |
## Skill Boundaries
### What This Skill Does Well
- Structuring video production workflows
- Creating storyboard frameworks
- Suggesting technical approaches
- Providing creative direction templates
### What This Skill Cannot Do
- Replace professional videography
- Edit video files directly
- Make final creative judgments
- Guarantee audience engagement
## Related Skills
- [video-processing](../video-processing/) - Process video thumbnails
- [lighthouse-audit](../../seo-tools/lighthouse-audit/) - Check image impact on LCP
## Skill Metadata
- **Mode**: cyborg
```yaml
category: automation
subcategory: image-processing
dependencies: [Pillow, rembg]
difficulty: beginner
time_saved: 5+ hours/week
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!