Practice
1. What is the main goal of computer vision?
easy
Solution
Step 1: Understand the purpose of computer vision
Computer vision is about making computers see and understand visual data like images and videos.Step 2: Compare options with this purpose
Only To help computers understand images and videos matches this goal; others are unrelated to images or videos.Final Answer:
To help computers understand images and videos -> Option AQuick Check:
Computer vision = understanding images/videos [OK]
Hint: Computer vision means computers 'seeing' images [OK]
Common Mistakes:
- Confusing computer vision with text or audio processing
- Thinking it speeds up internet or unrelated tasks
2. Which Python library is commonly used to load and show images in computer vision?
easy
Solution
Step 1: Identify libraries for image handling
OpenCV is a popular library designed for image and video processing.Step 2: Check other options
NumPy handles arrays, Matplotlib plots graphs, Pandas manages tables; none focus on image loading/display like OpenCV.Final Answer:
OpenCV -> Option BQuick Check:
OpenCV = image loading/showing [OK]
Hint: OpenCV is the go-to for images/videos in Python [OK]
Common Mistakes:
- Choosing NumPy which is for arrays, not images
- Picking Matplotlib which is for plotting, not image loading
3. What will the following Python code print?
import cv2
img = cv2.imread('image.jpg', cv2.IMREAD_GRAYSCALE)
print(img.shape)medium
Solution
Step 1: Understand cv2.imread with GRAYSCALE flag
Loading an image in grayscale returns a 2D array with height and width only (no color channels).Step 2: Check what img.shape returns
For grayscale images, shape is a tuple of two values: (height, width).Final Answer:
A tuple with 2 values (height, width) -> Option AQuick Check:
Grayscale image shape = (height, width) [OK]
Hint: Grayscale images have 2D shape, color images have 3D [OK]
Common Mistakes:
- Expecting 3 values for grayscale images
- Thinking shape returns total pixels as integer
- Assuming code has syntax error
4. The code below tries to convert a color image to grayscale but throws an error. What is the mistake?
import cv2
img = cv2.imread('photo.png')
gray = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
cv2.imshow('Gray', gray)
cv2.waitKey(0)
cv2.destroyAllWindows()medium
Solution
Step 1: Check color conversion code
The code uses cv2.COLOR_GRAY2BGR which converts grayscale to color, but input is color image.Step 2: Correct conversion for color to grayscale
To convert color to grayscale, use cv2.COLOR_BGR2GRAY instead.Final Answer:
Using COLOR_GRAY2BGR instead of COLOR_BGR2GRAY -> Option DQuick Check:
Color to grayscale needs COLOR_BGR2GRAY [OK]
Hint: Use COLOR_BGR2GRAY to convert color to grayscale [OK]
Common Mistakes:
- Mixing up color conversion flags
- Thinking cv2.imshow can't show grayscale images
- Assuming waitKey needs argument
5. You want to build a simple system that detects if an image is mostly dark or bright. Which approach is best to start with?
hard
Solution
Step 1: Understand the problem of brightness detection
Brightness relates to how light or dark pixels are; grayscale simplifies this by removing color.Step 2: Choose a simple and effective method
Converting to grayscale and averaging pixel values gives a direct measure of brightness, easy and fast.Final Answer:
Convert the image to grayscale and calculate the average pixel brightness -> Option CQuick Check:
Grayscale average brightness = brightness check [OK]
Hint: Grayscale average pixel value shows image brightness [OK]
Common Mistakes:
- Using complex models without simple preprocessing
- Counting colors which doesn't measure brightness
- Resizing without addressing brightness
