Amazon Nova Canvas replace: Digital try-on and elegance choices now out there


Voiced by Polly

Have you ever ever wished you could possibly shortly visualize how a brand new outfit would possibly look on you earlier than making a purchase order? Or how a bit of furnishings would look in your lounge? Right now, we’re excited to introduce a brand new digital try-on functionality in Amazon Nova Canvas that makes this doable. As well as, we’re including eight new type choices for improved type consistency for text-to-image primarily based type prompting. These options broaden Nova Canvas AI-powered picture technology capabilities making it simpler than ever to create life like product visualizations and stylized pictures that may improve the expertise of your prospects.

Let’s take a fast have a look at how one can begin utilizing these in the present day.

Getting began
The very first thing is to just be sure you have entry to the Nova Canvas mannequin by means of the standard means. Head to the Amazon Bedrock console, select Mannequin entry and allow Amazon Nova Canvas to your account ensuring that you choose the suitable areas to your workloads. If you have already got entry and have been utilizing Nova Canvas, you can begin utilizing the brand new options instantly as they’re robotically out there to you.

Digital try-on
The primary thrilling new characteristic is digital try-on. With this, you possibly can add two photos and ask Amazon Nova Canvas to place them along with life like outcomes. These could possibly be photos of attire, equipment, residence furnishings, and some other merchandise together with clothes. For instance, you possibly can present the image of a human because the supply picture and the image of a garment because the reference picture, and Amazon Nova Canvas will create a brand new picture with that very same particular person sporting the garment. Let’s do this out!

My place to begin is to pick out two pictures. I picked considered one of myself in a pose that I feel would work effectively for a garments swap and an image of an AWS-branded hoodie.

Matheus and AWS-branded hoodie

Be aware that Nova Canvas accepts pictures containing a most of 4.1M pixels – the equal of two,048 x 2,048 – so you should definitely scale your pictures to suit these constraints if obligatory. Additionally, for those who’d prefer to run the Python code featured on this article, guarantee you could have Python 3.9 or later put in in addition to the Python packages boto3 and pillow.

To use the hoodie to my photograph, I exploit the Amazon Bedrock Runtime invoke API. Yow will discover full particulars on the request and response constructions for this API within the Amazon Nova Consumer Information. The code is simple, requiring only some inference parameters. I exploit the brand new taskType of "VIRTUAL_TRY_ON". I then specify the specified settings, together with each the supply picture and reference picture, utilizing the virtualTryOnParams object to set a number of required parameters. Be aware that each pictures should be transformed to Base64 strings.

import base64


def load_image_as_base64(image_path): 
   """Helper operate for getting ready picture information."""
   with open(image_path, "rb") as image_file:
      return base64.b64encode(image_file.learn()).decode("utf-8")


inference_params = {
   "taskType": "VIRTUAL_TRY_ON",
   "virtualTryOnParams": {
      "sourceImage": load_image_as_base64("particular person.png"),
      "referenceImage": load_image_as_base64("aws-hoodie.jpg"),
      "maskType": "GARMENT",
      "garmentBasedMask": {"garmentClass": "UPPER_BODY"}
   }
}

Nova Canvas makes use of masking to control pictures. This is a way that enables AI picture technology to deal with particular areas or areas of a picture whereas preserving others, just like utilizing painter’s tape to guard areas you don’t wish to paint.

You should use three completely different masking modes, which you’ll be able to select by setting maskType to the right worth. On this case, I’m utilizing "GARMENT", which requires me to specify which a part of the physique I wish to be masked. I’m utilizing "UPPER_BODY" , however you should utilize others similar to "LOWER_BODY", "FULL_BODY", or "FOOTWEAR" if you wish to particularly goal the ft. Seek advice from the documentation for a full record of choices.

I then name the invoke API, passing in these inference arguments and saving the generated picture to disk.

# Be aware: The inference_params variable from above is referenced beneath.

import base64
import io
import json

import boto3
from PIL import Picture

# Create the Bedrock Runtime consumer.
bedrock = boto3.consumer(service_name="bedrock-runtime", region_name="us-east-1")

# Put together the invocation payload.
body_json = json.dumps(inference_params, indent=2)

# Invoke Nova Canvas.
response = bedrock.invoke_model(
   physique=body_json,
   modelId="amazon.nova-canvas-v1:0",
   settle for="utility/json",
   contentType="utility/json"
)

# Extract the photographs from the response.
response_body_json = json.hundreds(response.get("physique").learn())
pictures = response_body_json.get("pictures", [])

# Verify for errors.
if response_body_json.get("error"):
   print(response_body_json.get("error"))

# Decode every picture from Base64 and save as a PNG file.
for index, image_base64 in enumerate(pictures):
   image_bytes = base64.b64decode(image_base64)
   image_buffer = io.BytesIO(image_bytes)
   picture = Picture.open(image_buffer)
   picture.save(f"image_{index}.png")

I get a really thrilling consequence!

Matheus wearing AWS-branded hoodie

And similar to that, I’m the proud wearer of an AWS-branded hoodie!

Along with the "GARMENT" masks sort, it’s also possible to use the "PROMPT" or "IMAGE" masks. With "PROMPT", you additionally present the supply and reference pictures, nevertheless, you present a pure language immediate to specify which a part of the supply picture you’d like to get replaced. That is just like how the "INPAINTING" and "OUTPAINTING" duties work in Nova Canvas. If you wish to use your personal picture masks, you then select the "IMAGE" masks sort and supply a black-and-white picture for use as masks, the place black signifies the pixels that you simply wish to get replaced on the supply picture, and white those you wish to protect.

This functionality is particularly helpful for retailers. They will use it to assist their prospects make higher buying choices by seeing how merchandise look earlier than shopping for.

Utilizing type choices
I’ve at all times puzzled what I might appear to be as an anime superhero. Beforehand, I might use Nova Canvas to control a picture of myself, however I must depend on my good immediate engineering abilities to get it proper. Now, Nova Canvas comes with pre-trained types you can apply to your pictures to get high-quality outcomes that observe the inventive type of your selection. There are eight out there types together with 3D animated household movie, design sketch, flat vector illustration, graphic novel, maximalism, midcentury retro, photorealism, and tender digital portray.

Making use of them is as easy as passing in an additional parameter to the Nova Canvas API. Let’s attempt an instance.

I wish to generate a picture of an AWS superhero utilizing the 3D animated household movie type. To do that, I specify a taskType of "TEXT_IMAGE" and a textToImageParams object containing two parameters: textual content and type. The textual content parameter accommodates the immediate describing the picture I wish to create which on this case is “a superhero in a yellow outfit with a giant AWS brand and a cape.” The type parameter specifies one of many predefined type values. I’m utilizing "3D_ANIMATED_FAMILY_FILM" right here, however you’ll find the total record within the Nova Canvas Consumer Information.

inference_params = {
   "taskType": "TEXT_IMAGE",
   "textToImageParams": {
      "textual content": "a superhero in a yellow outfit with a giant AWS brand and a cape.",
      "type": "3D_ANIMATED_FAMILY_FILM",
   },
   "imageGenerationConfig": {
      "width": 1280,
      "peak": 720,
      "seed": 321
   }
}

Then, I name the invoke API simply as I did within the earlier instance. (The code has been omitted right here for brevity.) And the consequence? Properly, I’ll allow you to decide for your self, however I’ve to say I’m fairly happy with the AWS superhero sporting my favourite shade following the 3D animated household movie type precisely as I envisioned.

Amazon Nova Canvas replace: Digital try-on and elegance choices now out there 1

What’s actually cool is that I can maintain my code and immediate precisely the identical and solely change the worth of the type attribute to generate a picture in a totally completely different type. Let’s do this out. I set type to PHOTOREALISM.

inference_params = { 
   "taskType": "TEXT_IMAGE", 
   "textToImageParams": { 
      "textual content": "a superhero in a yellow outfit with a giant AWS brand and a cape.",
      "type": "PHOTOREALISM",
   },
   "imageGenerationConfig": {
      "width": 1280,
      "peak": 720,
      "seed": 7
   }
}

And the result’s spectacular! A photorealistic superhero precisely as I described, which is a far departure from the earlier generated cartoon and all it took was altering one line of code.

Amazon Nova Canvas replace: Digital try-on and elegance choices now out there 2

Issues to know
Availability – Digital try-on and elegance choices can be found in Amazon Nova Canvas within the US East (N. Virginia), Asia Pacific (Tokyo), and Europe (Eire). Present customers of Amazon Nova Canvas can instantly use these capabilities with out migrating to a brand new mannequin.

Pricing – See the Amazon Bedrock pricing web page for particulars on prices.

For a preview of digital try-on of clothes, you possibly can go to nova.amazon.com the place you possibly can add a picture of an individual and a garment to visualise completely different clothes mixtures.

In case you are able to get began, please take a look at the Nova Canvas Consumer Information or go to the AWS Console.

Matheus Guimaraes | @codingmatheus

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles