AI Photo Restoration
Restore old and damaged photographs to their former quality 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": "Restore this old damaged photograph: remove scratches and tears, fix faded areas, sharpen blurry details, reconstruct any missing portions naturally, maintain the original character and era of the photo while making it clean and clear"},
{"type": "image_url", "image_url": {"url": "https://example.com/old-damaged-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": "Restore this old damaged photograph: remove scratches and tears, fix faded areas, sharpen blurry details, reconstruct any missing portions naturally, maintain the original character and era of the photo while making it clean and clear"
}],
# 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 Photo Restoration
- Always provide the source image via
image_urls — restoration requires the original damaged photo.
- Describe the specific damage — scratches, tears, water stains, fading, mold spots, or crease lines.
- Specify what to preserve — "maintain the 1950s aesthetic," "keep the sepia tone," or "preserve the original composition."
- Request incremental fixes — start with scratch removal, then sharpening, then detail reconstruction.
- Combine with colorization — after restoration, use the photo colorization skill to add color to black and white photos.
Examples
Scratch and Tear Repair
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": "Restore this vintage family portrait: remove the deep scratches across the center, repair the torn corner in the upper right, clean up the yellowed and stained areas, sharpen the faces while keeping the natural film grain, preserve the warm vintage tone"},
{"type": "image_url", "image_url": {"url": "https://example.com/scratched-family-photo.jpg"}}
]
}
],
"stream": false
}'
Faded Photo Enhancement
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": "Restore this severely faded photograph: bring back the lost contrast and detail, recover the shadow areas that have become flat grey, enhance the highlights without blowing them out, reconstruct facial features that have faded, maintain natural photographic quality"},
{"type": "image_url", "image_url": {"url": "https://example.com/faded-photo.jpg"}}
]
}
],
"stream": false
}'
Water Damage Repair
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": "Repair this water-damaged photograph: remove the water stains and discoloration, fix the warped and bubbled areas, reconstruct the portions where the emulsion has been washed away, restore natural skin tones and background details"},
{"type": "image_url", "image_url": {"url": "https://example.com/water-damaged-photo.jpg"}}
]
}
],
"stream": false
}'
Workflow: Photo Restoration Pipeline
- Scan the original — Digitize the physical photo at the highest resolution possible.
- Assess damage — Identify scratches, tears, fading, stains, and missing areas.
- Restore structural damage — Remove scratches, repair tears, and clean stains.
- Enhance clarity — Sharpen details, restore contrast, and recover faded areas.
- Reconstruct missing parts — Use AI to fill in damaged or missing sections.
- Colorize (optional) — Add color to black and white restored photos.
- Final review — Compare with original to ensure faithful restoration.
Related Skills
Related Models
Documentation
1---2name: ai-photo-restoration3description: Restore old and damaged photos using each::sense AI. Repair scratches, tears, fading, water damage, and age deterioration. Reconstruct missing details, sharpen blurry areas, and bring damaged photographs back to life. Use for: photo restoration, old photo repair, damaged photo fix, vintage photo enhancement, archival restoration. Triggers: photo restoration, restore old photo, fix damaged photo, repair photo, old photo, vintage photo, photo repair, scratch removal, photo recovery, archival restoration4---56# AI Photo Restoration78Restore old and damaged photographs to their former quality using [each::sense](https://docs.eachlabs.ai/sense/overview) — the intelligent AI agent that automatically selects the best model for your request.910## Quick Start1112> Requires an each::labs API key. Get one at [eachlabs.ai](https://eachlabs.ai).1314### Using curl1516```bash17curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \18 -H "Content-Type: application/json" \19 -H "X-API-Key: $EACHLABS_API_KEY" \20 -d '{21 "messages": [22 {23 "role": "user",24 "content": [25 {"type": "text", "text": "Restore this old damaged photograph: remove scratches and tears, fix faded areas, sharpen blurry details, reconstruct any missing portions naturally, maintain the original character and era of the photo while making it clean and clear"},26 {"type": "image_url", "image_url": {"url": "https://example.com/old-damaged-photo.jpg"}}27 ]28 }29 ],30 "stream": false31 }'32```3334### Using Python (OpenAI SDK)3536```python37from openai import OpenAI3839client = OpenAI(40 api_key="YOUR_EACHLABS_API_KEY",41 base_url="https://eachsense-agent.core.eachlabs.run/v1"42)4344response = client.chat.completions.create(45 model="eachsense/beta",46 messages=[{47 "role": "user",48 "content": "Restore this old damaged photograph: remove scratches and tears, fix faded areas, sharpen blurry details, reconstruct any missing portions naturally, maintain the original character and era of the photo while making it clean and clear"49 }],50 # Images are included in the message content array above51)5253print(response.choices[0].message.content)54```5556### Streaming5758Set `"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.5960## Tips for Photo Restoration6162- **Always provide the source image** via `image_urls` — restoration requires the original damaged photo.63- **Describe the specific damage** — scratches, tears, water stains, fading, mold spots, or crease lines.64- **Specify what to preserve** — "maintain the 1950s aesthetic," "keep the sepia tone," or "preserve the original composition."65- **Request incremental fixes** — start with scratch removal, then sharpening, then detail reconstruction.66- **Combine with colorization** — after restoration, use the photo colorization skill to add color to black and white photos.6768## Examples6970### Scratch and Tear Repair7172```bash73curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \74 -H "Content-Type: application/json" \75 -H "X-API-Key: $EACHLABS_API_KEY" \76 -d '{77 "messages": [78 {79 "role": "user",80 "content": [81 {"type": "text", "text": "Restore this vintage family portrait: remove the deep scratches across the center, repair the torn corner in the upper right, clean up the yellowed and stained areas, sharpen the faces while keeping the natural film grain, preserve the warm vintage tone"},82 {"type": "image_url", "image_url": {"url": "https://example.com/scratched-family-photo.jpg"}}83 ]84 }85 ],86 "stream": false87 }'88```8990### Faded Photo Enhancement9192```bash93curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \94 -H "Content-Type: application/json" \95 -H "X-API-Key: $EACHLABS_API_KEY" \96 -d '{97 "messages": [98 {99 "role": "user",100 "content": [101 {"type": "text", "text": "Restore this severely faded photograph: bring back the lost contrast and detail, recover the shadow areas that have become flat grey, enhance the highlights without blowing them out, reconstruct facial features that have faded, maintain natural photographic quality"},102 {"type": "image_url", "image_url": {"url": "https://example.com/faded-photo.jpg"}}103 ]104 }105 ],106 "stream": false107 }'108```109110### Water Damage Repair111112```bash113curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \114 -H "Content-Type: application/json" \115 -H "X-API-Key: $EACHLABS_API_KEY" \116 -d '{117 "messages": [118 {119 "role": "user",120 "content": [121 {"type": "text", "text": "Repair this water-damaged photograph: remove the water stains and discoloration, fix the warped and bubbled areas, reconstruct the portions where the emulsion has been washed away, restore natural skin tones and background details"},122 {"type": "image_url", "image_url": {"url": "https://example.com/water-damaged-photo.jpg"}}123 ]124 }125 ],126 "stream": false127 }'128```129130## Workflow: Photo Restoration Pipeline1311321. **Scan the original** — Digitize the physical photo at the highest resolution possible.1332. **Assess damage** — Identify scratches, tears, fading, stains, and missing areas.1343. **Restore structural damage** — Remove scratches, repair tears, and clean stains.1354. **Enhance clarity** — Sharpen details, restore contrast, and recover faded areas.1365. **Reconstruct missing parts** — Use AI to fill in damaged or missing sections.1376. **Colorize (optional)** — Add color to black and white restored photos.1387. **Final review** — Compare with original to ensure faithful restoration.139140## Related Skills141142- [AI Photo Colorization](../ai-photo-colorization/SKILL.md) — Add color to black and white photos143- [AI HDR Enhancement](../ai-hdr-enhancement/SKILL.md) — Dynamic range and detail enhancement144- [AI Photo Style Transfer](../ai-photo-style-transfer/SKILL.md) — Apply artistic styles145- [AI Stock Photo](../ai-stock-photo/SKILL.md) — Generate new stock photography146147## Related Models148149- [flux-2-max](../../../models/flux-2-max/SKILL.md) — High-fidelity image reconstruction150- [seedream-v4-5](../../../models/seedream-v4-5/SKILL.md) — Intelligent detail recovery151- [nano-banana-pro](../../../models/nano-banana-pro/SKILL.md) — Quick restoration previews152153## Documentation154155- [each::sense Overview](https://docs.eachlabs.ai/sense/overview)156- [each::labs API](https://docs.eachlabs.ai)