AI Image Expansion: How to Uncrop Photos and Keep the Original
Use AI outpainting to add space beyond a photo’s borders. Firefly offers a browser workflow, Photoshop lets you retain the original in a layered edit, and ChatGPT handles conversational changes. The right choice depends on how much of the photo must stay unchanged.
On this page

To make a photo wider or taller without stretching the subject, expand the canvas and generate content outside the existing frame. This is usually called AI image expansion, uncrop, or outpainting. For a browser workflow with documented controls, start with Adobe Firefly’s Generative Expand. For a simple aspect-ratio change, Clipdrop Uncrop is another option. Choose Photoshop when you need to keep the original available as a separate layer, or ChatGPT Images when you want to describe and refine the wider scene in conversation.
The important distinction is between a convincing continuation and an unchanged original. A generative editor can produce a believable background while also altering a face, label, or object edge. If those details must remain exact, retain the original image and use the generated result only for the surrounding area.
Choose an image expander for the job you actually have
Start with the amount of control your image needs. A landscape for a slide and a labeled product photo for an advertisement can require very different finishing work.
| Your task | A suitable starting point | What to do next |
|---|---|---|
| Add background for a banner, thumbnail, or social crop | Firefly Generative Expand | Set the target ratio, generate the new area, and inspect the joins |
| Change the ratio with a short upload-and-generate workflow | Clipdrop Uncrop | Choose a ratio and check whether the new framing works |
| Extend a photo while retaining exact subject details | Photoshop plus an unchanged original layer | Generate the surrounding area, then keep the original over it |
| Describe a larger scene and refine it with follow-up instructions | ChatGPT Images | Request the ratio and continuation, then correct individual problems |
| Process images inside an application | OpenAI Image API or Google’s current Gemini image-editing API | Supply the image, target composition, and output settings; save and inspect the result |

These choices follow documented workflows, rather than a measured speed or quality ranking. Product instructions and API details here were checked on October 11, 2026; the examples below are suggested workflows, not results from a controlled image-generation test.
Clipdrop’s Uncrop instructions describe uploading an image, selecting a new aspect ratio, and generating the expanded image. That makes it useful for a straightforward framing task. Its public feature page does not establish a numeric free allowance or a guarantee that every original pixel remains unchanged.
Expand a photo in Firefly, step by step
Adobe’s browser editor provides a direct route from an uploaded photo to a larger canvas. Its Generative Expand page accepts JPEG, PNG, and WebP images up to 100 MB and documents the following workflow:
- Sign in to Firefly with an Adobe account and choose Edit an Image.
- Open the Edit tab and upload your photo. You can also choose an existing generated image from the Generate tab.
- In the left-hand Quick Actions menu, choose Generative Expand.
- Select an aspect-ratio preset or drag the borders outward to create the space you need.
- Select Generate to fill the added canvas.
- If you want a particular continuation, enter a description in the prompt box and generate again.
For example, imagine a 4:3 photo of a bicycle leaning against a brick wall. You want a 16:9 presentation image with room for a heading on the left. Keep the bicycle toward the right and add space primarily to the left. A suggested instruction is:
Continue the brick wall and pavement to the left. Keep the same camera angle and daylight. Leave the added wall area clear for a heading; do not add another bicycle or signs.
The prompt describes the new area and its purpose. It does not ask the model to redesign the entire photograph. Add your heading afterward in a layout editor so its wording and placement remain under your control.
A usable result has the requested ratio, enough clear space for the heading, and a believable join between the old wall and the generated wall. Look especially at brick courses, pavement lines, the bicycle’s silhouette, and the direction of shadows. If the framing is right but the new wall contains an unwanted object, fix that area rather than starting over with a different photo.
Adobe distinguishes Generative Expand, which adds space outside the frame, from Generative Fill, which changes content within the frame. Use Expand for the initial border extension and Fill when the task becomes replacing a defect inside the resulting image. Adobe’s feature FAQ explains that distinction.
Keep the original photo intact with a layered Photoshop edit
Use a layered workflow when a face, product label, or precise contour must survive the expansion. The practical control comes from retaining the original, rather than trusting a prompt to preserve it.
Adobe’s Photoshop instructions say to select Crop, drag the handles beyond the canvas, choose Generative Expand in the Contextual Task Bar, select an Adobe Firefly model, leave the prompt blank, and select Generate. Choose a variation in the Properties panel. A blank prompt is a documented way to continue the photograph; it is not evidence that blank prompts always outperform written ones.
For an edit you can recover and refine:
- Save a working copy and retain an untouched copy of the original photo.
- Expand the canvas using the documented Crop and Generative Expand flow.
- Choose the variation whose added background fits the composition.
- Place the untouched original above the generated image, aligned to its original position and scale. Keep its interior visible; mask the generated layer to provide the surrounding area.
- Blend the join in the background where needed, while leaving the critical subject and its details untouched.
- Save the layered master, then export the finished layout.
That compositing approach can retain the original raster in the working document. Resizing, color conversion, and lossy export can still change the final file’s pixels. For a strict delivery requirement, agree on whether “unchanged” means the visible subject, its original raster values, or the entire encoded file, and choose the export process accordingly.
A cropped-off hand, wheel, or product corner is different: the missing part must be invented. Keeping the existing pixels does not make the new anatomy or geometry authentic. If the image needs to document a real object accurately, use an uncropped original or another photograph when available.
Expand an image in ChatGPT and refine the result
ChatGPT Images lets you upload an existing image and describe the edit. You can also select an image in the conversation, use the editor’s Aspect ratio option, and regenerate it in a different ratio. Selection and conversational editing are both supported, but OpenAI notes that changes can extend beyond a highlighted area. OpenAI’s current help page describes these controls.
For the bicycle example, upload the photo and request:
Expand this photograph to 16:9 with more brick wall on the left for presentation text. Keep the bicycle in its current position and retain the existing lighting, perspective, and pavement. Extend the scene rather than zooming out or shrinking the bicycle.
After generation, open the result and check whether it is truly an extension. A model may satisfy a wider ratio by changing the scale or arrangement of the scene. If that happens, return to the original image and clarify which area should grow.
Use a focused follow-up for a specific defect:
Remove the extra wheel in the added left-hand area and continue the empty wall and pavement there. Keep the bicycle on the right as it is.
When the surrounding scene needs a creative change, describe it explicitly—for example, continuing the pavement into a wider courtyard. When continuity is the goal, keep the request focused on the existing materials, lighting, and camera angle.
Save the accepted image using the image controls. For broader changes such as restyling an uploaded image or replacing its contents, our guide to alternatives for AI image editing covers the neighboring task. Expanding the frame does not require choosing a new general-purpose image generator first.
Repair seams, changed subjects, and implausible extensions

Judge an expansion at the intended display size and up close. A background may look convincing in a thumbnail while a broken line becomes obvious in a large banner.
| What you see | Next action | What an acceptable correction looks like |
|---|---|---|
| A visible seam or a change in brightness at the old border | Regenerate or retouch the join, concentrating on the surrounding background | Texture and lighting continue across the boundary |
| Repeated trees, extra furniture, or a duplicate object | Select the unwanted addition and ask for a simpler continuation | The added space serves the layout without distracting repetition |
| A changed face, label, or product shape | Restore that area from the original in a layered editor | The important details come from the source photo |
| Bent wall lines or a drifting horizon | Correct the geometry manually, try a smaller extension, or use another source photo | Lines meet at the intended perspective and level |
| A result that shrinks the subject to fill the new ratio | Restart from the original and specify where extra space belongs | The subject retains its intended size and position |
| Invented details in a cropped-off body part | Use another photo if accuracy matters; otherwise treat the addition as generated content | The output suits its purpose without claiming authentic recovery |
Ask for only the space your layout needs. If a large extension produces too much invented detail, try an intermediate frame and inspect it before expanding further. This is a troubleshooting option, not a universal success rule or a proven optimal percentage. More passes also mean more opportunities for drift, so retain the original and each accepted version.
Separate framing from other changes. First make the image fit the layout; then address a defect or creative change. This gives you a clear comparison for deciding whether the latest edit helped.
Automate outpainting with current image-editing APIs
For an application, the useful unit of work is an input photo, an intended placement on a larger canvas, an edit request, and a saved output. Keep the original and the placement information so you can recover the subject or reject an unsuitable extension.
OpenAI: one edit request or a conversation
OpenAI currently documents gpt-image-2.5-sunburst and gpt-image-2.5-flare for image generation and editing. Use the Image API for a single edit request. Use the Responses API when the application needs follow-up edits with image context; its image tool supports action: "edit" when an image is already in context. The top-level Responses model and the image tool’s model are separate settings. OpenAI’s image-generation guide explains both routes.
Here is a request-body example for POST https://api.openai.com/v1/images/edits. It assumes your application already has authorized API access. Replace both placeholder data URLs with actual base64-encoded PNG data before sending it; this is not an executed API test.
{
"model": "gpt-image-2.5-sunburst",
"images": [
{ "image_url": "data:image/png;base64,REPLACE_WITH_CANVAS_PNG_BASE64" }
],
"mask": {
"image_url": "data:image/png;base64,REPLACE_WITH_MASK_PNG_BASE64"
},
"prompt": "Continue the brick wall and pavement into the empty left-hand area. Match the daylight and camera perspective. Keep the bicycle on the right at its current size and position. Add no text, signs, or additional bicycles.",
"size": "1536x864",
"output_format": "png"
}Prepare and handle that request as follows:
- Create a 1536 × 864 canvas. As a concrete layout example, place a 1152 × 864 source photo at x = 384, y = 0, without resizing it. This leaves 384 pixels of new space on the left.
- Create a same-size PNG mask with an alpha channel: the new left-hand area is transparent, and the retained source area is opaque. The source image and mask must use the same format and dimensions and meet the guide’s under-50-MB requirement.
- Encode the canvas and mask as PNG data URLs, substitute them into the JSON, and send an authenticated JSON request to the endpoint above using your application’s existing HTTP client.
- Read
data[0].b64_jsonfrom a successful response, base64-decode it, and save the bytes as a PNG. GPT Image output is base64 image data; do not assume the response contains a hosted image URL. - Check the actual output dimensions and inspect the join and subject. If exact subject preservation is required, composite the original photo back at the recorded placement and keep the generated content around it.
The endpoint’s current HTTP reference documents image references, mask references, and base64 output. A mask reference uses either an image URL or a file ID.
The mask is guidance, not a hard pixel lock. OpenAI says the model may not follow the mask’s exact shape precisely. It applies the mask to the first image when there are multiple inputs. The alpha channel is essential: a black-and-white RGB image alone is not the same mask. These conditions are stated in the editing and mask sections of the guide.
The example output is 16:9 and contains 1,327,104 pixels. Both dimensions are multiples of 16, within the documented GPT Image 2.5 custom-size limits. Other sizes must also meet the allowed ratio, edge, and total-pixel limits; resolutions above 2560 × 1440 are experimental. OpenAI’s output settings provide the full constraints. A valid size calculation does not establish visual quality or successful generation.
Google Cloud: use current Gemini editing documentation
Google’s current Gemini image-editing documentation supports image-plus-text editing and multi-turn refinement. It lists supported models including gemini-nano-banana-2.1 and gemini-2.5-flash-image, and limits the entire request to 50 MB.
For an existing Google Cloud integration, use the selected model’s current generateContent route: supply the photograph as an image part, add a text instruction describing the wider frame, request image output, and save the returned image part. For another edit, include the previous image context as required by the multi-turn documentation. Check the selected model’s supported ratios and output resolutions rather than assuming every model has the same settings.
The older Imagen outpainting page now lists discontinued endpoints, including imagen-3.0-capability-001, with a migration deadline of June 30, 2026. Its old masked outpainting parameters are not a current Gemini editing recipe. In particular, do not carry EDIT_MODE_OUTPAINT, BGSWAP, or an Imagen mask-dilation value into a Gemini request.
For either provider, save each output under a new name and retain the input, target dimensions, and prompt. Validate the returned file before passing it to the next stage. Automation makes the process repeatable; it does not make every generated extension suitable for publication without inspection.
Frequently asked questions
Is uncrop the same as AI image expansion?
For this task, the terms usually refer to generating content beyond an image’s current borders. “Uncrop” often names a tool’s aspect-ratio workflow; “outpainting” describes the generative operation. Neither proves that the tool recovered the actual scene removed by an earlier crop.
Does expanding an image improve its resolution?
Expansion adds scene area. Upscaling increases the pixel dimensions of the existing composition. Choose expansion to fit a new frame, upscaling to enlarge the same frame, or both in separate stages when you need both results. Check the exported dimensions rather than judging resolution from the tool’s name.
Can I expand an image with AI for free?
Adobe says Firefly Generative Expand includes free daily generations with an Adobe account, but its feature page does not specify the count. ChatGPT Images is available on all tiers, without a numeric free allowance in the cited help page. Free availability does not mean unlimited expansion or a particular export entitlement. See Firefly’s FAQ and ChatGPT Images availability for their respective product conditions.
Can ChatGPT expand a photo without changing my face?
You can ask it to extend the background and keep your face unchanged, but the request is not a guarantee. OpenAI says selection boundaries can be imprecise and edits can reach beyond them. For exact retention, use the generated extension around the original photo in a layered editor. ChatGPT’s editing help describes the selection limitation.
Can I use an AI-expanded photo commercially?
Check the terms for the actual tool and model, along with your rights to the uploaded photograph and its depicted content. Adobe’s FAQ permits commercial use of images created with Firefly generative features that are not labeled beta. That statement does not automatically cover every partner model or every source asset. Adobe’s commercial-use answer gives the applicable Firefly condition.
What should I do when the expanded border looks wrong?
Identify whether the problem is a seam, an unwanted object, changed original details, or invented missing geometry. Repair or regenerate the affected background for seams and added objects; restore important details from the original for subject drift. If accurate missing anatomy or product geometry is essential, another source photograph is the stronger option.
Sources8
External pages this guide links to, in the order they appear. Last updated Oct 11, 2026.
Sources8
External pages this guide links to, in the order they appear. Last updated Oct 11, 2026.
- 1.Clipdrop’s Uncrop instructionsclipdrop.co/uncrop
- 2.Generative Expand pageadobe.com/products/firefly/features/ai-image-expander.html
- 3.Adobe’s Photoshop instructionshelpx.adobe.com/photoshop/desktop/create-open-import-images/create-images/explore-beyond-the-canvas-with-generative-expand.html
- 4.OpenAI’s current help pagehelp.openai.com/en/articles/11084440-images-in-chatgpt
- 5.OpenAI’s image-generation guidedevelopers.openai.com/api/docs/guides/image-generation
- 6.current HTTP referencedevelopers.openai.com/api/reference/resources/images/methods/edit
- 7.Gemini image-editing documentationdocs.cloud.google.com/gemini-enterprise-agent-platform/models/capabilities/gemini-edit-images
- 8.older Imagen outpainting pagedocs.cloud.google.com/vertex-ai/generative-ai/docs/image/edit-outpainting





