AI Photo Style Transfer
Apply artistic styles to photographs, transforming them into paintings, illustrations, and other visual media using each::sense — the intelligent AI agent that automatically selects the best model for your request.
Quick Start
Requires an each::labs API key. Get one at eachlabs.ai.
Using curl
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "Transform this photograph into a Van Gogh-style oil painting: swirling brushstrokes, thick impasto texture, vibrant post-impressionist colors, starry night energy, maintain the original composition and subjects but reimagine entirely in oil paint"},
{"type": "image_url", "image_url": {"url": "https://example.com/original-photo.jpg"}}
]
}
],
"stream": false
}'
Using Python (OpenAI SDK)
from openai import OpenAI
client = OpenAI(
api_key="YOUR_EACHLABS_API_KEY",
base_url="https://eachsense-agent.core.eachlabs.run/v1"
)
response = client.chat.completions.create(
model="eachsense/beta",
messages=[{
"role": "user",
"content": "Transform this photograph into a Van Gogh-style oil painting: swirling brushstrokes, thick impasto texture, vibrant post-impressionist colors, starry night energy, maintain the original composition and subjects but reimagine entirely in oil paint"
}],
# Images are included in the message content array above
)
print(response.choices[0].message.content)
Streaming
Set "stream": true for real-time SSE responses, or "stream": false for complete result in a single response. Streaming is useful for showing progress in UIs; non-streaming is simpler for scripts and automation.
Tips for Style Transfer
- Always provide the source photo via
image_urlsfor transformation. - Name the target style explicitly — "oil painting," "watercolor," "charcoal sketch," "anime," "pop art."
- Reference specific artists or movements — "Monet impressionism," "Hokusai woodblock," "Warhol pop art."
- Control the transformation intensity — "subtle stylization" vs. "complete reimagining."
- Specify what to preserve — "keep the facial features accurate" or "maintain the building architecture."
Examples
Watercolor Transformation
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "Convert this landscape photograph into a delicate watercolor painting: soft color washes bleeding at the edges, visible paper texture, loose brushwork in the foliage, sharper detail in the foreground, traditional watercolor technique with wet-on-wet blending"},
{"type": "image_url", "image_url": {"url": "https://example.com/landscape.jpg"}}
]
}
],
"stream": false
}'
Anime Style
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "Transform this portrait into anime style: large expressive eyes, clean line art, flat color shading with subtle gradients, characteristic anime hair rendering, maintain the person's overall look and clothing but fully converted to Japanese anime aesthetic"},
{"type": "image_url", "image_url": {"url": "https://example.com/portrait.jpg"}}
]
}
],
"stream": false
}'
Pencil Sketch
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "Transform this city street photo into a detailed pencil sketch: fine hatching and cross-hatching for shadows, clean lines for architecture, varying pencil pressure for depth, white paper background showing through, skilled draughtsman quality, graphite on paper"},
{"type": "image_url", "image_url": {"url": "https://example.com/city-street.jpg"}}
]
}
],
"stream": false
}'
Pop Art
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "Transform this portrait into Andy Warhol pop art style: bold flat colors, high contrast, four-panel grid with different color variations — pink and yellow, blue and green, orange and purple, red and teal — Ben-Day dots texture, iconic pop art screen print aesthetic"},
{"type": "image_url", "image_url": {"url": "https://example.com/face-photo.jpg"}}
]
}
],
"stream": false
}'
Workflow: Style Transfer Gallery
- Select source photos — Choose high-quality, well-composed photographs.
- Choose target styles — Pick artistic styles that complement each image.
- Transform with style cues — Apply detailed style descriptions for best results.
- Compare results — Review the transformation against the original.
- Create a style series — Apply the same style to multiple photos for a cohesive set.
Related Skills
- AI Photo Restoration — Restore photos before styling
- AI Photo Colorization — Add color before artistic transfer
- AI HDR Enhancement — Enhance photos before transformation
- AI Stock Photo — Generate base photos for styling
Related Models
- flux-2-max — Precise style application
- seedream-v4-5 — Rich artistic interpretation
- nano-banana-pro — Quick style previews