📖 Scenario: You are programming a drone to fly safely and intelligently. The drone uses computer vision to see obstacles and decide where to go. This helps the drone avoid crashes and navigate well.
🎯 Goal: Build a simple program that uses a list of detected objects from the drone's camera and decides if the drone should stop or keep flying based on the distance to obstacles.
📋 What You'll Learn
Create a list called detected_objects with obstacle names and distances
Create a variable called safe_distance to set the minimum distance to obstacles
Use a for loop with variables obj and dist to check each detected object
Create a list called danger_objects with obstacles closer than safe_distance
Print the danger_objects list to show which obstacles are too close
💡 Why This Matters
🌍 Real World
Drones use computer vision to see their surroundings and avoid obstacles automatically, making flights safer and smarter.
💼 Career
Understanding how to process vision data and make decisions is key for drone programmers and robotics engineers.
Progress0 / 4 steps
1
Create the detected objects list
Create a list called detected_objects with these exact tuples: ("tree", 5), ("building", 12), ("bird", 3), ("pole", 7)
Drone Programming
Hint
Use square brackets [] to create a list and parentheses () for each tuple.
2
Set the safe distance
Create a variable called safe_distance and set it to 6
Drone Programming
Hint
Just write safe_distance = 6 on a new line.
3
Find obstacles closer than safe distance
Create an empty list called danger_objects. Use a for loop with variables obj and dist to iterate over detected_objects. Inside the loop, if dist is less than safe_distance, add obj to danger_objects.
Drone Programming
Hint
Remember to create an empty list first, then use a for loop to check each distance.
4
Print the danger objects
Write a print statement to display the danger_objects list.
Drone Programming
Hint
Use print(danger_objects) to show the list.
Practice
(1/5)
1. Why is computer vision important for drones to fly intelligently?
easy
A. It helps drones see and understand their surroundings.
B. It makes drones fly faster without any sensors.
C. It allows drones to recharge their batteries mid-flight.
D. It controls the drone's motor speed directly.
Solution
Step 1: Understand the role of computer vision in drones
Computer vision lets drones capture images and interpret what they see around them.
Step 2: Connect vision to intelligent flight
By understanding surroundings, drones can avoid obstacles and navigate safely.
Final Answer:
It helps drones see and understand their surroundings. -> Option A
Quick Check:
Computer vision = understanding environment [OK]
Hint: Think: vision means 'seeing' and understanding [OK]
Common Mistakes:
Confusing vision with speed control
Thinking vision recharges batteries
Assuming vision replaces all sensors
2. Which Python code snippet correctly imports a library used for computer vision in drones?
easy
A. import computer_vision
B. import dronevision
C. import cv2
D. import vision.cv
Solution
Step 1: Identify common computer vision libraries
OpenCV is a popular library for computer vision, imported as cv2 in Python.
Step 2: Check the import syntax
Correct import is 'import cv2' without errors or typos.
Final Answer:
import cv2 -> Option C
Quick Check:
OpenCV import = cv2 [OK]
Hint: Remember OpenCV is imported as cv2 in Python [OK]
Common Mistakes:
Using non-existent library names
Wrong import syntax
Confusing module names
3. What will the following Python code print when a drone detects an obstacle using computer vision?
import cv2
obstacle_detected = True
if obstacle_detected:
print('Stop and avoid obstacle')
else:
print('Continue flying')
medium
A. Continue flying
B. Stop and avoid obstacle
C. Error: obstacle_detected undefined
D. No output
Solution
Step 1: Check the value of obstacle_detected
The variable obstacle_detected is set to True, meaning an obstacle is detected.
Step 2: Follow the if-else logic
Since obstacle_detected is True, the code prints 'Stop and avoid obstacle'.
Final Answer:
Stop and avoid obstacle -> Option B
Quick Check:
True condition prints stop message [OK]
Hint: True triggers first print statement [OK]
Common Mistakes:
Ignoring the True value and picking else output
Thinking variable is undefined
Assuming no output without print
4. The following code is meant to detect obstacles and print a warning, but it does not work as expected. What is the error?
obstacle_detected = False
if obstacle_detected = True:
print('Obstacle ahead!')
else:
print('Path is clear')
medium
A. Missing import statement for cv2
B. Variable obstacle_detected is not defined
C. Print statement syntax is wrong
D. Using '=' instead of '==' in the if condition
Solution
Step 1: Identify the if condition syntax
The code uses '=' which is assignment, not comparison. It should use '==' to compare values.
Step 2: Understand why this causes error
Using '=' in if condition causes a syntax error, stopping the code from running.
Final Answer:
Using '=' instead of '==' in the if condition -> Option D
Quick Check:
Comparison needs '==' not '=' [OK]
Hint: Use '==' for comparison in if statements [OK]
Common Mistakes:
Confusing assignment '=' with comparison '=='
Thinking import is needed for this error
Assuming print syntax is wrong
5. A drone uses computer vision to detect obstacles and decide its flight path. Which approach best enables the drone to avoid collisions while following a moving target?
hard
A. Use a camera to detect obstacles and a tracking algorithm to follow the target.
B. Fly randomly and hope to avoid obstacles by chance.
C. Only use GPS data without any vision sensors.
D. Disable obstacle detection to increase speed.
Solution
Step 1: Understand the need for obstacle detection
To avoid collisions, the drone must see obstacles using a camera or sensors.
Step 2: Combine obstacle detection with target tracking
Following a moving target requires tracking algorithms that work with vision data.
Step 3: Evaluate other options
Random flying or ignoring obstacles risks crashes; GPS alone lacks obstacle info.
Final Answer:
Use a camera to detect obstacles and a tracking algorithm to follow the target. -> Option A
Quick Check:
Vision + tracking = safe, smart flight [OK]
Hint: Combine vision for obstacles and tracking for targets [OK]
Common Mistakes:
Ignoring obstacle detection
Relying only on GPS
Flying randomly without control
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.