POV Selfie · सार्वजनिक Open Skill

POV Selfie

POV Selfie Digen पर एक सार्वजनिक Open Skill है। खोलें और जानें कि यह वर्कफ़्लो क्या बनाता है।

@GG_Bone

Custom

0 1 1

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4150474/2026-10-15/p6zvy2un.jpg

# POV Selfie

Turns a reference photo of a person (full-body, studio or casual shot) into a single **first-person / POV selfie**: the same person holding the camera at arm's length, up close, with a soft high-key pastel look.

- Input: 1 reference image (the character / main subject). Optional: extra reference photos, style or scene requests.
- Output: **one** new image (9:16 portrait by default), added to the canvas.
- No structured project state. The reference image itself carries identity; the prompt carries the style.

## When to use

- The user uploads a person photo and asks for a selfie / POV selfie / "as if she took it herself".
- The user asks to keep the same person, outfit and identity but change the camera position to handheld close-up.
- The user wants the "before figure → selfie" transformation shown in the sample card, but only the **selfie** (Figure 2) is the deliverable.

## Steps

### 1. Inspect the reference image

Look at the uploaded image and lock down identity details before writing the prompt:

1. If the user's request is ambiguous or the image is small, call `recognize_image(image_url=<reference>, prompt="Describe the person: face shape, fringe/hair style, hair color, makeup, and every clothing item with its color and material. Also describe the background.")`.
2. Otherwise read it directly and note: face shape & fringe, hair length/color, eye look, outfit items (e.g. white lace headwrap, blue gingham halter dress with a white chest bow, white lace ruffle sleeves, thigh-high stockings), body type, accessories.
3. Never invent a different person, and never drop an outfit item the user asked to keep.

### 2. Build the generation prompt (English only)

`generate_image.prompt` must always be written in **English**, and must contain all five blocks below, in this order. Fill the brackets from the reference image; keep the wording of the style blocks intact. Full style vocabulary, variants and the negative list live in `references/pov-selfie-style.md` — read it (with `read_skill_file`) the first time you run this skill, or whenever the user asks for a specific look.

1. **Shot type / camera**: `first-person POV selfie, taken by the subject holding the camera at arm's length, extreme close-up to medium close-up, 9:16 vertical, slight wide-angle selfie lens distortion, camera ~30-50 cm from the face, shallow depth of field`
2. **Subject identity**: `<same face and fringe, hair style/color, makeup, and the exact outfit items from the reference image>` — plus, when the user wants the outfit kept, an explicit `wearing the same <item list as in the reference>`.
3. **Pose / framing**: `one bare arm and forearm entering frame from the bottom corner as the selfie arm, hand partly visible or cropped, head tilted slightly, shoulders angled toward the lens, upper body leaning in, subject filling 60-80% of the frame, direct eye contact with the lens, natural relaxed smile` (adjust only if the user asks for another expression).
4. **Scene / environment**: `<the reference background, or the user's requested place, e.g. cozy bedroom with a bright window and sheer white curtains, white bedding, blurred background>`.
5. **Style / light / colour**: `bright high-key soft daylight from a window behind and beside the subject, glowing rim light on hair edges, soft bloom, luminous dewy skin, pastel airy colour palette — periwinkle, powder blue, cream white, warm skin tone — low saturation, slightly milky film grading, delicate lace and cotton textures, gentle film grain, soft-focus edges, cute intimate everyday mood`.

Append the negative clause from the reference file to the same prompt, e.g. `negative: no collage, no frames, no poster layout, no text, no logo, no watermark, no multiple panels, no plastic skin, no harsh contrast, no duplicate hands`.

### 3. Generate

```
generate_image(
  prompt=<prompt built in step 2>,
  input_urls=[<the uploaded reference asset_id, https or s3:// uri>],
  model='i2i',
  orientation='portrait',