Shot Quality Validator Skill
Purpose
Perform quality assurance on generated shot images, flagging issues for regeneration and tracking quality metrics.
Trigger
Shots generated by shot-image-generator.
Inputs Required
- •
SHOTS_EP{{XX}}/*.png- Generated images - •
SHOT_LIST_EP{{XX}}.json- Shot specifications - •
CANON_DB.json- Reference data - •
CHARACTER_REFS/*/refs/*.png- Character references
Outputs Produced
- •
SHOT_QA_REPORT_EP{{XX}}.md- Quality assessment report - •Updated
SHOT_LIST_EP{{XX}}.json(with QA status) - •List of shots requiring regeneration
Quality Dimensions
1. Reference Consistency
Does the shot match the reference images?
| Check | Weight | Pass Criteria |
|---|---|---|
| Character face match | 30% | Recognizable as reference |
| Character body/pose | 15% | Proportions consistent |
| Location match | 20% | Key features present |
| Prop accuracy | 5% | Matches reference |
2. Technical Quality
Is the image technically sound?
| Check | Weight | Pass Criteria |
|---|---|---|
| Resolution | 5% | Meets target dimensions |
| Clarity/sharpness | 10% | No unwanted blur |
| Artifacts | 10% | No visible generation artifacts |
| Anatomy | 15% | No deformities |
| Single moment | 15% | Clean frame, no composite/multi-state images |
CRITICAL: Single Moment Check Frame prompts must produce a single clean moment, not composites. Watch for:
- •Multiple versions of same character in frame (before/after states)
- •Split-screen or triptych compositions (unless explicitly requested)
- •Motion blur suggesting multiple moments
- •Transitional language in prompt interpreted literally
Common cause: Prompts containing transitional language like "expression shifts from X to Y" will cause models to render both X and Y states in a single image.
Fix: Move transitional language to VIDEO prompts only. Frame prompts should describe a static moment (the START state).
3. Composition
Does the shot match specification?
| Check | Weight | Pass Criteria |
|---|---|---|
| Shot type | 10% | Correct framing |
| Character positions | 10% | Match composition notes |
| Focus/DoF | 5% | Correct focal subject |
| Lighting | 10% | Matches style guide |
4. Style Consistency
Does the shot match show aesthetic?
| Check | Weight | Pass Criteria |
|---|---|---|
| Color grading | 10% | Matches style guide |
| Mood | 10% | Appropriate atmosphere |
| Period accuracy | 5% | No anachronisms |
Process
Step 1: Load Shot and Specification
For each shot in SHOTS_EP{{XX}}:
- •Load the generated image
- •Load corresponding shot specification
- •Load relevant character/location references
Step 2: Automated Checks
Technical Checks (automated):
- •File exists and loads correctly
- •Dimensions match specification
- •File size is reasonable
- •No obvious corruption
Basic Visual Checks (if using vision model):
- •Number of figures matches character count
- •General composition matches type
- •No obvious artifacts
Step 3: Reference Comparison
Compare generated shot against:
- •Character reference images
- •Location reference images
Score similarity:
- •High (0.85+): Very consistent
- •Medium (0.70-0.84): Acceptable with minor drift
- •Low (<0.70): Needs regeneration
Step 4: Manual Review Flags
Flag for human review if:
- •Multiple characters present
- •Complex action/pose
- •First shot of scene
- •First appearance of character
- •Similarity score < 0.80
- •Automated checks flag issues
Step 5: Generate QA Report
# Shot QA Report: EP{{XX}}
## Summary
- Total Shots: {{COUNT}}
- Passed: {{COUNT}} ({{%}})
- Flagged for Review: {{COUNT}} ({{%}})
- Failed (Regenerate): {{COUNT}} ({{%}})
## Failed Shots
### EP01_SC03_SH02
- **Issue**: Character face drift
- **Severity**: High
- **Action**: Regenerate with higher ref weight
- **Notes**: Eyes and hair differ from reference
## Flagged for Review
### EP01_SC05_SH01
- **Reason**: Complex two-shot
- **Checks Passed**: 8/10
- **Notes**: Verify character positions
## Quality Metrics
### By Scene
| Scene | Shots | Pass Rate | Notes |
|-------|-------|-----------|-------|
| SC01 | 12 | 83% | |
### By Character
| Character | Appearances | Consistency Score |
|-----------|-------------|-------------------|
| ALICE | 45 | 0.87 |
### Common Issues
1. {{ISSUE}} - {{COUNT}} occurrences
Step 6: Update Shot List
Add QA status to each shot:
{
"qa": {
"status": "passed|flagged|failed",
"score": 0.85,
"issues": [],
"reviewed_by": "auto|human",
"timestamp": "..."
}
}
Step 7: Generate Regeneration List
Create list of shots needing regeneration:
{
"regeneration_queue": [
{
"shot_id": "EP01_SC03_SH02",
"reason": "character_drift",
"suggestion": "increase_ref_weight",
"priority": "high"
}
]
}
Severity Levels
CRITICAL (Regenerate Required)
- •Character unrecognizable
- •Wrong number of figures
- •Major anatomical errors
- •Completely wrong location
- •Composite/multi-moment image (frame shows multiple states of same subject)
HIGH (Likely Regenerate)
- •Significant character drift
- •Wrong shot type
- •Major composition issues
- •Obvious artifacts
MEDIUM (Review Needed)
- •Minor character variations
- •Slight composition drift
- •Lighting inconsistency
- •Minor artifacts
LOW (Acceptable with Notes)
- •Very minor variations
- •Style slightly off
- •Could be improved but usable
Automation Levels
Fully Automated
- •Technical file checks
- •Dimension verification
- •Basic presence detection
Semi-Automated (Vision Model)
- •Figure counting
- •General composition check
- •Obvious error detection
Manual Required
- •Detailed character verification
- •Nuanced expression matching
- •Final approval decisions
Notes
- •Start with automated checks to filter obvious failures
- •Use sampling for large batches
- •Track patterns in failures to improve generation
- •Quality threshold can be adjusted per project
- •Some variance is expected and acceptable
- •Perfect consistency is not the goal