Claude-skill-registry image-filter-lab
Apply artistic filters to images including vintage, sepia, B&W, blur, sharpen, vignette, and color adjustments. Create custom filter presets.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/image-filter-lab" ~/.claude/skills/majiayu000-claude-skill-registry-image-filter-lab && rm -rf "$T"
manifest:
skills/data/image-filter-lab/SKILL.mdsource content
Image Filter Lab
Apply professional filters and effects to images.
Features
- Color Filters: Sepia, B&W, color tint, saturation
- Blur Effects: Gaussian, motion, radial blur
- Artistic Filters: Vintage, film grain, vignette
- Enhancements: Sharpen, contrast, brightness
- Custom Presets: Save and apply filter combinations
- Batch Processing: Apply filters to multiple images
Quick Start
from image_filter import ImageFilterLab lab = ImageFilterLab() lab.load("photo.jpg") # Apply vintage filter lab.vintage() lab.save("photo_vintage.jpg") # Chain multiple effects lab.load("photo.jpg") lab.brightness(1.2).contrast(1.1).saturation(0.8).vignette() lab.save("photo_edited.jpg")
CLI Usage
# Apply single filter python image_filter.py --input photo.jpg --filter vintage --output result.jpg # Apply multiple filters python image_filter.py -i photo.jpg --sepia --vignette --sharpen -o result.jpg # Adjust parameters python image_filter.py -i photo.jpg --brightness 1.2 --contrast 1.1 -o result.jpg # Batch process python image_filter.py --batch photos/ --filter vintage --output-dir filtered/
API Reference
ImageFilterLab Class
class ImageFilterLab: def __init__(self) # Loading def load(self, filepath: str) -> 'ImageFilterLab' # Color Filters def grayscale(self) -> 'ImageFilterLab' def sepia(self, intensity: float = 1.0) -> 'ImageFilterLab' def negative(self) -> 'ImageFilterLab' def tint(self, color: Tuple, intensity: float = 0.3) -> 'ImageFilterLab' # Adjustments def brightness(self, factor: float) -> 'ImageFilterLab' def contrast(self, factor: float) -> 'ImageFilterLab' def saturation(self, factor: float) -> 'ImageFilterLab' def hue(self, shift: int) -> 'ImageFilterLab' def temperature(self, value: int) -> 'ImageFilterLab' # Blur Effects def blur(self, radius: int = 5) -> 'ImageFilterLab' def motion_blur(self, size: int = 15, angle: int = 0) -> 'ImageFilterLab' def radial_blur(self, amount: int = 10) -> 'ImageFilterLab' # Sharpen def sharpen(self, factor: float = 1.0) -> 'ImageFilterLab' def unsharp_mask(self, radius: int = 2, percent: int = 150) -> 'ImageFilterLab' # Artistic def vintage(self) -> 'ImageFilterLab' def film_grain(self, amount: int = 25) -> 'ImageFilterLab' def vignette(self, radius: float = 0.8, intensity: float = 0.5) -> 'ImageFilterLab' def posterize(self, levels: int = 4) -> 'ImageFilterLab' def solarize(self, threshold: int = 128) -> 'ImageFilterLab' # Presets def apply_preset(self, preset: str) -> 'ImageFilterLab' def save_preset(self, name: str, operations: List) -> None # Output def save(self, filepath: str, quality: int = 95) -> str def reset(self) -> 'ImageFilterLab' # Batch def batch_process(self, input_dir: str, output_dir: str, filter_func: callable) -> List[str]
Built-in Presets
- vintage: Sepia tint, reduced saturation, vignette
- film: Slight desaturation, grain, crushed blacks
- instagram: High contrast, warm tint, vignette
- noir: High contrast B&W, strong vignette
- warm: Warm color temperature, increased saturation
- cool: Cool color temperature, slightly desaturated
- dramatic: High contrast, deep shadows
- dreamy: Soft blur, bright highlights, low contrast
Dependencies
- pillow>=10.0.0
- opencv-python>=4.8.0
- numpy>=1.24.0