omnious/vella

AI-powered virtual try-on - see how clothes look on models instantly without physical photoshoots

57 runs

Readme

Vella: AI Virtual Try-On 👔✨

Overview 🎨

Vella is an AI-powered virtual try-on service that transforms fashion visualization. Upload a model photo and a garment image, and Vella will show you how that clothing looks on the model—no physical photoshoots required!

This model is built upon the amazing work of Omnious AI, the creators of Vella. We’ve wrapped their Vella-1.5 API to work on Replicate, making professional virtual try-on accessible through a simple API!

Learn more about Omnious AI and Vella: - Vella Website - How to Create Your Brand’s Lookbook with AI - Omnious AI on Twitter

What makes Vella special 🚀

Traditional fashion photography requires expensive photoshoots, multiple outfit changes, and exhausting sessions. Vella changes this by:

  • Instant Visualization: See how any garment looks on a model in seconds, not days
  • Multiple Variations: Generate 1-4 different try-on results with different styling variations
  • Precise Control: Use masks to specify exactly where garments should be placed for perfect results
  • Consistent Quality: Vella-1.5 delivers natural fits and realistic rendering, even from rear-view angles
  • Any Garment Type: Works with tops, bottoms, dresses, and outerwear
  • Reproducible Results: Use seeds to get consistent outputs across multiple runs

Best use cases 🎯

Vella excels at: - Fashion E-commerce: Show products on diverse models without multiple photoshoots - Lookbook Creation: Build entire collections with AI-generated try-on images - Product Visualization: Let customers see how clothes look before manufacturing - Marketing Materials: Create professional fashion imagery at scale - Style Exploration: Test different garment combinations quickly - Brand Catalogs: Generate consistent model shots across your entire inventory

How to use 🌟

Basic try-on

Upload a model photo and a garment image:

output = replicate.run(
    "omnious/vella",
    input={
        "model_image": "https://example.com/model.jpg",
        "top_image": "https://example.com/shirt.jpg"
    }
)

Generate multiple variations

Get 4 different styling options:

output = replicate.run(
    "omnious/vella",
    input={
        "model_image": "https://example.com/model.jpg",
        "dress_image": "https://example.com/dress.jpg",
        "num_outputs": 4
    }
)

Reproducible results

Use a seed for consistent outputs:

output = replicate.run(
    "omnious/vella",
    input={
        "model_image": "https://example.com/model.jpg",
        "bottom_image": "https://example.com/pants.jpg",
        "seed": 42
    }
)

Precise placement with masks

Use a mask to control exactly where the garment appears:

output = replicate.run(
    "omnious/vella",
    input={
        "model_image": "https://example.com/model.jpg",
        "outer_image": "https://example.com/jacket.jpg",
        "outer_mask_image": "https://example.com/mask.png"
    }
)

Try different garment categories

Vella supports all major clothing categories:

# Tops (shirts, blouses, t-shirts)
output = replicate.run("omnious/vella", input={"model_image": "...", "top_image": "..."})

# Bottoms (pants, skirts, shorts)
output = replicate.run("omnious/vella", input={"model_image": "...", "bottom_image": "..."})

# Dresses
output = replicate.run("omnious/vella", input={"model_image": "...", "dress_image": "..."})

# Outerwear (jackets, coats, cardigans)
output = replicate.run("omnious/vella", input={"model_image": "...", "outer_image": "..."})

Parameter controls 🎛️

model_image (required): Photo of the person who will be wearing the clothes. Works best with clear, full-body or upper-body shots.

top_image / bottom_image / outer_image / dress_image (at least one required): The garment image you want to try on. Choose the appropriate category for best results.

top_mask_image / bottom_mask_image / outer_mask_image / dress_mask_image (optional): Mask images for precise garment placement. Mask the exact area on the model where you want the garment to appear. The more precise the masking, the better the results.

num_outputs (1-4, default: 1): Number of different try-on variations to generate. Higher numbers give you more styling options to choose from.

seed (optional): Random seed for reproducibility. Use the same seed to get consistent results across multiple runs. Leave blank for random variations.

Tips for best results 💡

Model photos work best when: - The person is clearly visible (full body or upper body) - Good lighting with minimal shadows - Simple background that doesn’t compete with the clothing - Person is standing naturally, not in extreme poses - High resolution images (not blurry or pixelated)

Garment photos work best when: - The clothing is shown flat or on a clean background - The entire garment is visible - Good lighting shows texture and color accurately - High resolution to capture fabric details

Using masks: - Masks should be black and white (white = where garment goes) - Match the mask area to where that garment naturally sits on a body - More precise masks = better results - Optional but recommended for professional-quality outputs

Limitations to consider ⚠️

  • Works best with standard fashion photography angles
  • Extreme poses or unusual angles may affect quality
  • Very complex patterns or textures may vary in reproduction
  • Processing time increases with multiple outputs (num_outputs > 1)
  • Results depend on quality of input images—higher quality inputs give better outputs