Bird
Raised Fist0
Prompt Engineering / GenAIml~10 mins

Image-to-image transformation in Prompt Engineering / GenAI - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to load an image and convert it to a tensor for image-to-image transformation.

Prompt Engineering / GenAI
from PIL import Image
import torchvision.transforms as transforms

image = Image.open('input.jpg')
transform = transforms.Compose([
    transforms.ToTensor(),
])
tensor_image = [1](image)
Drag options to blanks, or click blank then click option'
AImage.open
Btransform
Ctransforms
DImage
Attempts:
3 left
💡 Hint
Common Mistakes
Using Image.open again instead of the transform.
Trying to call transforms directly without Compose.
2fill in blank
medium

Complete the code to define a simple convolutional layer for image-to-image transformation.

Prompt Engineering / GenAI
import torch.nn as nn

conv_layer = nn.Conv2d(in_channels=3, out_channels=16, kernel_size=[1], padding=1)
Drag options to blanks, or click blank then click option'
A3
B1
C5
D7
Attempts:
3 left
💡 Hint
Common Mistakes
Using kernel size 1 which is too small to capture features.
Using kernel size 7 which is large and uncommon here.
3fill in blank
hard

Fix the error in the code to apply a ReLU activation after the convolutional layer.

Prompt Engineering / GenAI
import torch.nn.functional as F

output = F.[1](conv_layer(input_tensor))
Drag options to blanks, or click blank then click option'
Arelu
Bsigmoid
Csoftmax
Dtanh
Attempts:
3 left
💡 Hint
Common Mistakes
Using sigmoid which is less common for convolutional activations.
Using softmax which is for classification outputs.
4fill in blank
hard

Fill both blanks to create a dictionary comprehension that maps image filenames to their transformed tensors if the image size is greater than 256.

Prompt Engineering / GenAI
image_tensors = {filename: [1] for filename, image in images.items() if image.size[0] [2] 256}
Drag options to blanks, or click blank then click option'
Atransform(image)
Btransform
C>
D<
Attempts:
3 left
💡 Hint
Common Mistakes
Using transform without calling it as a function.
Using '<' instead of '>' in the condition.
5fill in blank
hard

Fill all three blanks to create a dictionary comprehension that maps image names to their grayscale tensors if the height is less than 128.

Prompt Engineering / GenAI
grayscale_images = {name: [1](image.convert([2])) for name, image in dataset.items() if image.size[1] [3] 128}
Drag options to blanks, or click blank then click option'
Atransform
B'L'
C<
D'RGB'
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'RGB' instead of 'L' for grayscale conversion.
Using '>' instead of '<' in the size condition.

Practice

(1/5)
1.

What is the main goal of image-to-image transformation in AI?

easy
A. To change an input image into a different output image automatically
B. To classify images into categories
C. To detect objects inside an image
D. To generate text from an image

Solution

  1. Step 1: Understand the purpose of image-to-image transformation

    This technique changes one image into another, like coloring or style transfer.
  2. Step 2: Compare with other image tasks

    Classification, detection, and text generation are different tasks, not image transformation.
  3. Final Answer:

    To change an input image into a different output image automatically -> Option A
  4. Quick Check:

    Image-to-image transformation = change image [OK]
Hint: Image-to-image means input image changes to output image [OK]
Common Mistakes:
  • Confusing transformation with classification
  • Thinking it detects objects instead of changing images
  • Mixing it up with text generation from images
2.

Which of the following is the correct way to describe an image-to-image model's input and output?

Input: ?
Output: ?

easy
A. Input: Image, Output: Image
B. Input: Text, Output: Image
C. Input: Image, Output: Text
D. Input: Number, Output: Image

Solution

  1. Step 1: Identify input type for image-to-image models

    These models take an image as input to transform it.
  2. Step 2: Identify output type for image-to-image models

    The output is also an image, changed in style, color, or content.
  3. Final Answer:

    Input: Image, Output: Image -> Option A
  4. Quick Check:

    Input and output both images [OK]
Hint: Both input and output are images in image-to-image tasks [OK]
Common Mistakes:
  • Confusing input as text or numbers
  • Thinking output is text instead of image
  • Mixing input/output types
3.

Consider this simplified Python code using a model for image-to-image transformation:

input_image = load_image('sketch.png')
output_image = model.transform(input_image)
save_image(output_image, 'colorized.png')
print(type(output_image))

What will be printed?

medium
A. <class 'str'>
B. <class 'numpy.ndarray'>
C. <class 'PIL.Image.Image'>
D. Error: model.transform is not defined

Solution

  1. Step 1: Understand typical output type of image-to-image models

    Most models output images as numpy arrays representing pixel data.
  2. Step 2: Check code for output type

    Since model.transform returns an image, it is usually a numpy.ndarray, not a PIL Image or string.
  3. Final Answer:

    <class 'numpy.ndarray'> -> Option B
  4. Quick Check:

    Model output image = numpy array [OK]
Hint: Model outputs image arrays, not strings or PIL objects [OK]
Common Mistakes:
  • Assuming output is a string filename
  • Confusing PIL Image with numpy array
  • Expecting error without context
4.

Look at this code snippet for image-to-image transformation:

def transform_image(model, img_path):
    img = load_image(img_path)
    result = model.transform(img)
    return result

output = transform_image(my_model, 12345)
print(type(output))

What is the main error here?

medium
A. The function returns None instead of an image
B. The model.transform method does not exist
C. The image path should be a string, not a number
D. The print statement is missing parentheses

Solution

  1. Step 1: Check the argument passed to load_image

    load_image expects a file path string, but 12345 is a number, causing an error.
  2. Step 2: Verify other code parts

    model.transform and print syntax are correct; function returns result properly.
  3. Final Answer:

    The image path should be a string, not a number -> Option C
  4. Quick Check:

    Image path must be string [OK]
Hint: File paths must be strings, not numbers [OK]
Common Mistakes:
  • Thinking model.transform is missing
  • Ignoring argument type for image path
  • Confusing print syntax in Python 3
5.

You want to build an image-to-image model that converts black-and-white sketches into colored images. Which approach is best?

A dataset has pairs of sketches and their colored versions.

hard
A. Train a text-to-image model with sketch descriptions
B. Use unsupervised clustering on sketches only
C. Apply image classification on sketches
D. Train a supervised model using paired sketch and color images

Solution

  1. Step 1: Identify the task type

    Converting sketches to colored images is a paired image-to-image translation task.
  2. Step 2: Choose the right training method

    Supervised learning with paired data (sketch and color image) is best to learn direct mapping.
  3. Step 3: Evaluate other options

    Unsupervised clustering, text-to-image, and classification do not fit this paired transformation task.
  4. Final Answer:

    Train a supervised model using paired sketch and color images -> Option D
  5. Quick Check:

    Paired data needs supervised training [OK]
Hint: Use paired images for supervised training in image-to-image tasks [OK]
Common Mistakes:
  • Choosing unsupervised methods without paired data
  • Confusing text-to-image with image-to-image
  • Using classification instead of transformation