Bird
Raised Fist0
Computer Visionml~5 mins

Drawing on images (lines, rectangles, circles, text) in Computer Vision - Cheat Sheet & Quick Revision

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
Recall & Review
beginner
What is the purpose of drawing shapes like lines, rectangles, and circles on images in computer vision?
Drawing shapes helps highlight or mark important parts of an image, like objects or areas of interest, making it easier to understand or analyze the image.
Click to reveal answer
beginner
Which function is commonly used to draw a line on an image in OpenCV?
The function cv2.line() is used to draw a line by specifying the start and end points, color, and thickness.
Click to reveal answer
beginner
How do you specify the position and size of a rectangle when drawing it on an image?
You provide the top-left corner and bottom-right corner coordinates of the rectangle to define its position and size.
Click to reveal answer
beginner
What parameters are needed to draw text on an image?
You need the text string, position coordinates, font type, font scale (size), color, and thickness to draw text on an image.
Click to reveal answer
beginner
Why is it important to choose contrasting colors when drawing on images?
Contrasting colors make the drawn shapes or text stand out clearly against the image background, improving visibility and understanding.
Click to reveal answer
Which OpenCV function draws a circle on an image?
Acv2.circle()
Bcv2.rectangle()
Ccv2.line()
Dcv2.putText()
What does the thickness parameter control when drawing shapes on images?
AThe width of the shape's border
BThe color of the shape
CThe size of the shape
DThe transparency of the shape
To draw text on an image, which parameter specifies the font style?
AfontScale
Bthickness
Ccolor
DfontFace
Which coordinate system is used when drawing on images?
APolar coordinates
BCartesian coordinates with origin at top-left
CCartesian coordinates with origin at center
DSpherical coordinates
What happens if you set thickness to -1 when drawing a rectangle in OpenCV?
AThe rectangle is drawn with default thickness
BThe rectangle border is invisible
CThe rectangle is filled with color
DAn error occurs
Explain how to draw a rectangle and add text on an image using OpenCV.
Think about the functions cv2.rectangle() and cv2.putText() and their key parameters.
You got /7 concepts.
    Why is drawing shapes and text on images useful in computer vision projects?
    Consider how marking parts of an image helps people or algorithms.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which OpenCV function is used to draw a rectangle on an image?
      easy
      A. cv2.line
      B. cv2.rectangle
      C. cv2.circle
      D. cv2.putText

      Solution

      1. Step 1: Understand drawing functions in OpenCV

        OpenCV provides specific functions for different shapes: cv2.line for lines, cv2.circle for circles, cv2.rectangle for rectangles, and cv2.putText for text.
      2. Step 2: Identify the function for rectangles

        The function named cv2.rectangle is designed to draw rectangles on images.
      3. Final Answer:

        cv2.rectangle -> Option B
      4. Quick Check:

        Rectangle drawing = cv2.rectangle [OK]
      Hint: Rectangle drawing uses cv2.rectangle function [OK]
      Common Mistakes:
      • Confusing cv2.line with rectangle drawing
      • Using cv2.circle for rectangles
      • Trying to draw text with cv2.rectangle
      2. Which parameter in cv2.putText controls the thickness of the text?
      easy
      A. thickness
      B. fontScale
      C. fontFace
      D. color

      Solution

      1. Step 1: Review cv2.putText parameters

        The function cv2.putText has parameters: fontFace (font style), fontScale (size), color (text color), and thickness (line thickness of text).
      2. Step 2: Identify thickness parameter

        The thickness parameter controls how bold or thick the text lines appear.
      3. Final Answer:

        thickness -> Option A
      4. Quick Check:

        Text thickness = thickness parameter [OK]
      Hint: Thickness of text is set by 'thickness' parameter [OK]
      Common Mistakes:
      • Confusing fontScale with thickness
      • Using color to control thickness
      • Mistaking fontFace for thickness
      3. What will be the color of the line drawn by this code snippet?
      cv2.line(img, (10, 10), (100, 10), (0, 0, 255), 2)
      medium
      A. Red
      B. Green
      C. Blue
      D. Black

      Solution

      1. Step 1: Understand BGR color format in OpenCV

        OpenCV uses BGR order for colors, so (0, 0, 255) means Blue=0, Green=0, Red=255.
      2. Step 2: Identify the color from the tuple

        Since only the last value (Red) is 255, the line color will be bright red.
      3. Final Answer:

        Red -> Option A
      4. Quick Check:

        BGR (0,0,255) = Red [OK]
      Hint: Remember OpenCV colors are BGR, last value 255 means Red [OK]
      Common Mistakes:
      • Assuming (0,0,255) is blue (RGB confusion)
      • Mixing up color order
      • Ignoring OpenCV's BGR format
      4. Identify the error in this code that tries to draw a circle:
      cv2.circle(img, (50, 50), -10, (255, 0, 0), 3)
      medium
      A. Center coordinates must be floats
      B. Color tuple is wrong format
      C. Thickness cannot be 3
      D. Negative radius is invalid

      Solution

      1. Step 1: Check circle parameters

        The radius parameter must be a positive integer representing the circle size.
      2. Step 2: Identify invalid radius

        The radius given is -10, which is invalid and will cause an error.
      3. Final Answer:

        Negative radius is invalid -> Option D
      4. Quick Check:

        Radius must be positive integer [OK]
      Hint: Radius must be positive; negative values cause errors [OK]
      Common Mistakes:
      • Using negative radius values
      • Thinking thickness 3 is invalid
      • Assuming center coordinates must be floats
      5. You want to draw a blue rectangle with thickness 4 and label it "Object" in white text above it. Which code snippet correctly does this?
      img = cv2.imread('image.jpg')
      start = (30, 30)
      end = (150, 150)
      # Options below
      hard
      A. cv2.rectangle(img, start, end, (255, 0, 0), 2) cv2.putText(img, 'Object', (30, 20), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 255, 255), 4)
      B. cv2.rectangle(img, start, end, (0, 0, 255), 4) cv2.putText(img, 'Object', (30, 20), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 0), 2)
      C. cv2.rectangle(img, start, end, (255, 0, 0), 4) cv2.putText(img, 'Object', (30, 20), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (255, 255, 255), 2)
      D. cv2.rectangle(img, start, end, (0, 255, 0), 4) cv2.putText(img, 'Object', (30, 20), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (255, 255, 255), 2)

      Solution

      1. Step 1: Identify blue color in BGR

        Blue in BGR is (255, 0, 0), so rectangle color must be (255, 0, 0) with thickness 4.
      2. Step 2: Check text color and position

        Text "Object" should be white (255, 255, 255) and placed above rectangle at (30, 20) with reasonable font scale and thickness.
      3. Final Answer:

        Blue rectangle with thickness 4 and white "Object" text above -> Option C
      4. Quick Check:

        Blue = (255,0,0), white text, thickness 4 [OK]
      Hint: Blue is (255,0,0); white text is (255,255,255) [OK]
      Common Mistakes:
      • Mixing up BGR color order
      • Using wrong thickness values
      • Placing text inside rectangle instead of above