Resize and padding
Image can be upscaled and placed in any shape/canvas.
It is possible to set just one dimension, the other will be calculated automatically and image ratio will be preserved. Also padding parameter will be used in that case.
Notice that Deep Image supports AI upscale up to 4x of the original resolution. Everything above that will be upscaled traditionally with bicubic supersampling.
Let's check some resize examples.
This is the input image.

Input image: 640x427
The destination image size can be controller with "width" and "height" parameters.
Image can be also upscaled with "print_size" and "dpi" parameters. More on that here in Image Processing / Print chapter.
Parameter name | Description |
---|---|
width |
|
height |
|
{
"url": "https://deep-image.ai/api-example.png",
"width": 1000
}

Result image: 1000x667
{
"url": "https://deep-image.ai/api-example.png",
"height": 1000
}

Result image: 1500x1000
If width and height is specified together, image with original ratio will be upscaled and placed inside "width x height" canvas. Fitting parameter will be used accordingly.
{
"url": "https://deep-image.ai/api-example.png",
"width": 1000,
"height": 1000
}

Result image: 1000x1000
According to specified width and height image can either cropped to fill given canvas or placed fully into the given canvas. When image is cropped checking the image content can be performed.
How the image is placed into destination canvas (with width and height parameters) is controlled by "fit" parameter.
Name | Description |
---|---|
canvas | (default) - whole image is placed into width x height canvas, missing space is filled with background color. |
crop | Image is cropped to match destination width x height canvas. Crop is content aware by default. It can be changed to be on center as well. |
bounds | image is upscaled to fit specified width x height. |
cover | image is upscaled to fully cover specified width x height. |
Canvas
Crop
{
"url": "https://deep-image.ai/api-example.png",
"width": 1000,
"height": 1000,
"fit": "canvas"
}

Result image: 1000x1000
{
"url": "https://deep-image.ai/api-example.png",
"width": 1000,
"height": 1000,
"fit": {
"crop": "content"
}
}

Result image: 1000x1000
Image cropping can be performed from the image center or from the center of identified content.

Input
Center
Content
Item
{
"url": "https://deep-image.ai/api-example2.jpg",
"width": 1000,
"height": 1000,
"fit": {
"crop": "center"
}
}

Result
{
"url": "https://deep-image.ai/api-example2.jpg",
"width": 1000,
"height": 1000,
"fit": {
"crop": "content"
}
}

Result
{
"url": "https://deep-image.ai/api-example2.jpg",
"width": 1000,
"height": 1000,
"fit": {
"crop": "item"
}
}

Crop "item" type is not particularly useful without padding and removing background. But it's very useful for "product" type manipulations. More on that at Remove background and item cropping.
Content aware cropping prevents objects being cut by the desired canvas proportions. Let's see some examples.

Input image
{
"width": 1000,
"height": 1000,
"fit": "crop"
}

When margin is needed, parameter padding can be used for that. It can be specified either in pixels or in percentages.
Canvas
Crop
{
"url": "https://deep-image.ai/api-example.jpg",
"width": 1000,
"height": 1000,
"fit": "canvas",
"padding": "20%"
}

Result image: 1000x1000, content: 800x533, padding 200 pixels
{
"url": "https://deep-image.ai/api-example.jpg",
"width": 1000,
"height": 1000,
"fit": "crop",
"padding": "20%"
}

Result image: 1000x1000, content: 800x800, padding: 200
Last modified 6mo ago