本文へ移動
cccskills
無料GitHub で公開

colorize

Turn photos, videos, and Live Photos into a black-and-white to color reveal clip (单彩渐变 + 动感模糊 + 丁达尔旋焦). The frame starts monochrome and spun, color sweeps in from the left under a horizontal motion blur, and the spin settles from the center outward into a softly glowing full-color frame. Use when users ask for 上色效果, 黑白变彩色, 丁达尔旋焦, 旋焦上色, 剪映上色特效, color reveal, colorize transition, or want this effect on images, iPhone Live Photos (HEIC/JPG + MOV), Android motion photos, or video clips. Outputs H.264 MP4.

インストール方法を見る

含まれるファイル(9)

  • SKILL.md6.0 KB
  • agents/openai.yaml256 B
  • assets/demo.gif552.0 KB
  • assets/effect_maps/color_lut.png273.4 KB
  • assets/effect_maps/focus_mask.png27.9 KB
  • assets/effect_maps/mono_lut.png107.6 KB
  • assets/effect_maps/tyndall_lut.png242.0 KB
  • scripts/colorize.py20.5 KB
  • scripts/requirements.txt37 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Colorize

Workflow

  1. Collect the user's inputs: images, videos, or Live Photos. Use absolute paths.
  2. Resolve the skill directory and install dependencies once (see Requirements).
  3. Run scripts/colorize.py with the inputs and an output path.
  4. Wait for VALIDATION=PASS and OUTPUT_VIDEO=<absolute path>.
  5. Optionally extract a few frames with ffmpeg to check the look before replying.
  6. Return the output path and the settings used.

Quick Start

skill_dir=""
for base in "${AGENTS_HOME:-$HOME/.agents}" "${CLAUDE_HOME:-$HOME/.claude}" "${CODEX_HOME:-$HOME/.codex}"; do
  if [ -d "$base/skills/colorize" ]; then
    skill_dir="$base/skills/colorize"
    break
  fi
done
[ -n "$skill_dir" ] || { echo "colorize skill not found under ~/.agents, ~/.claude, or ~/.codex"; exit 1; }

python3 -m pip install -r "$skill_dir/scripts/requirements.txt"
python3 "$skill_dir/scripts/colorize.py" "/abs/path/photo.jpg" -o "$(pwd)/out/photo_colorize.mp4"

If the agent already knows the directory containing this SKILL.md, use that as skill_dir.

Inputs

InputWhat happens
Image (png jpg jpeg webp heic heif avif bmp tif)Static plate; the reveal lasts --duration seconds, then --hold seconds of the settled frame.
Video (mp4 mov m4v webm mkv avi gif)Each source frame keeps moving; the reveal runs over the first --duration seconds and the rest of the clip keeps the settled look. Audio is kept.
iPhone Live PhotoPass the still (IMG_0001.HEIC or .JPG). A same-name .MOV beside it is used automatically, with its audio. Pass the .MOV directly for the same result.
Android motion photoPass the .jpg; the embedded MP4 (Google MP.jpg / MVIMG, Samsung) is extracted automatically.
Several inputsRendered in order and joined into one MP4. Each input gets its own reveal.

Use --still to ignore Live Photo or motion photo video and animate only the still.

Common Commands

# One photo, 2 s reveal + 0.5 s hold
python3 "$skill_dir/scripts/colorize.py" photo.jpg --hold 0.5 -o out/photo.mp4

# Live Photo (IMG_0001.MOV next to it is picked up)
python3 "$skill_dir/scripts/colorize.py" IMG_0001.HEIC -o out/live.mp4

# Video: slower 3 s reveal, keep the first 6 s
python3 "$skill_dir/scripts/colorize.py" clip.mov --duration 3 --max-length 6 -o out/clip.mp4

# Several images and videos as one vertical reel
python3 "$skill_dir/scripts/colorize.py" a.jpg b.heic c.mov --size 1080x1920 -o out/reel.mp4

# Stronger spin and a little more glow
python3 "$skill_dir/scripts/colorize.py" photo.jpg --set angle=0.09 --set bloom=0.7 -o out/strong.mp4

Options

OptionDefaultMeaning
-o, --output<first input>_colorize.mp4Output MP4 path.
--duration2Reveal length in seconds.
--hold0Images only: seconds to hold the settled frame.
--fps30Output frame rate.
--size WxHfirst input's aspect, long edge ≤ --max-edgeForce output size; other inputs are center-cropped to it.
--max-edge1920Long-edge cap when --size is not set. Never upscales.
--max-lengthfull clipVideos: keep at most this many seconds.
--stilloffIgnore Live Photo / motion photo video.
--muteoffDrop audio.
--set KEY=VALUE—Override one effect parameter (repeatable).
--params file.json—Override several effect parameters.
--crf17x264 quality; lower is larger and sharper.

Effect Parameters

The defaults were fitted to the Jianying effect stack on static photos. Useful knobs for --set:

KeyDefaultEffect
angle0.0503Spin-blur arc in radians; larger is stronger, the sign sets direction. Decays to zero.
focus_scale0.9Final width of the sharp center disc; larger settles the edges sooner.
motion0.70Horizontal motion-blur strength; decays to zero.
blur_power1.0Blur decay curve; larger fades faster.
front_speed0.63Speed of the color sweep.
edge0.24Softness of the color/mono boundary.
bloom / rays0.54 / 0.29Soft glow and radial light-ray strength.
softness2.3Residual softening; 0 is sharpest.
saturation0.98Final saturation.
center_x, center_y0.5Spin center in UV (y up).

Behavior

  • Renders on the GPU with OpenGL 3.3 through moderngl (falls back to EGL on headless Linux) and encodes H.264 yuv420p BT.709 MP4 with ffmpeg.
  • Output follows the first input's aspect ratio and orientation, including rotation metadata on phone videos.
  • HDR (HLG/PQ) videos are tone-mapped to SDR when ffmpeg has zscale.
  • HEIC/AVIF stills need pillow-heif, macOS sips, or an ffmpeg with HEIF support.
  • When any input has audio, every segment carries an AAC track (silence for images) so joined clips stay in sync.
  • Videos shorter than --duration get a compressed reveal that still ends fully settled.
  • Prints VALIDATION=PASS after checking the output's size, duration, and audio with ffprobe.

Requirements

  • Python 3.9+ with numpy, moderngl, Pillow (scripts/requirements.txt); optional pillow-heif
  • ffmpeg and ffprobe on PATH
  • A GPU or driver with OpenGL 3.3 (macOS, Windows, desktop Linux, or Linux with EGL)

On macOS, if moderngl has to build from source: CXXFLAGS='-std=c++11' python3 -m pip install moderngl.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Clone or update https://github.com/nolangz/3D-Chladni and export deterministic 3D Chladni particle motion as MP4 or transparent ProRes MOV. Use when users ask for 3D 克拉尼, 克拉尼粒子动画, Chladni motion, sound-reactive sand or cosmic-web visuals, audio-to-motion, music visualizer video, or rendering Dynamic Sand, Modal Sand, Cosmic Web, or Dynamic Cosmic.

日本語の概要は準備中です。原文の説明を表示しています。

vibe-motion/skills1,3482026年10月6日 更新

Create fast, high-impact 15-30 second brand and product marketing videos from an official company website, verified brand sources, or user-uploaded product imagery. Use for launch films, website motion videos, AI/SaaS demos, product promos, and Vibe Motion/Remotion productions that require exact logos, authentic imagery, English-first copy, product-feature storytelling, strong visual impact, smooth transitions, and deterministic frame-based animation.

日本語の概要は準備中です。原文の説明を表示しています。

vibe-motion/skills1,3482026年10月6日 更新

Render a Claude-style prompt typing animation video by calling Remotion CLI against the remote site https://www.laosunwendao.com. Use when the user asks for "做一个 claude 的提示词打字机动画", "做 Claude 打字动画", "创建提示词动画", or similar requests that convert a text prompt into a typing-animation video.

日本語の概要は準備中です。原文の説明を表示しています。

vibe-motion/skills1,3482026年10月6日 更新

Apply Disney's 12 principles as practical design and engineering rules for procedural animation. Use when creating, improving, reviewing, or debugging code-driven motion in web, SVG, canvas, React, Remotion, game, UI, character, camera, or 3D scenes; especially when motion feels stiff, weightless, mechanical, unclear, or physically correct but visually weak.

日本語の概要は準備中です。原文の説明を表示しています。

vibe-motion/skills1,3482026年10月6日 更新

制作屏摄风格的鱼眼畸变效果与聚焦动画:桶形鱼眼畸变 + 细扫描线/摩尔纹干涉 + 四周暗角, 可对任意图片/视频做「推镜聚焦到某处 + 黄色标注块滑入」的 Remotion 视频输出。 核心是 clone https://github.com/vibe-motion/fisheye-motion 项目并按需改参数渲染。 触发词:鱼眼、fisheye、屏摄、摩尔纹、moire、扫描线、CRT、暗角、vignette、 聚焦推镜、高亮标注动画、screen-photo effect。

日本語の概要は準備中です。原文の説明を表示しています。

vibe-motion/skills1,3482026年10月6日 更新

Generate a swinging spotlight text-reveal HTML animation with configurable text, swing angle, lamp scale, glow, and colors. Use when users ask for 聚光灯扫字动画, spotlight text reveal, light logo reveal, 发光文字揭示动画, or want a reusable HTML animation instead of a static image.

日本語の概要は準備中です。原文の説明を表示しています。

vibe-motion/skills1,3482026年10月6日 更新

vibe-motion のスキルをすべて見る

このスキルの問題を報告する