In Chapter 4, Computer Vision for Self-Driving Cars, we looked at the theory behind the Hough transform. We also saw the differences between points in image space and Hough space, as shown in the following screenshot:
Fig 5.10: Image space to Hough space
Now, we will implement the Hough transform using OpenCV:
- Import the required libraries:
In[1]: import cv2
In[2]: import numpy as np
In[3]: import matplotlib.pyplot as plt
- Use the canny_edge function to detect of edges in the image:
In[4]: def canny_egde(image):
gray_conversion= cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
blur_conversion = cv2.GaussianBlur(gray_conversion, (5,5),0)
canny_conversion = cv2.Canny(blur_conversion, 50,150)
return canny_conversion
- We will reuse the region-of-interest function from the previous section:
In[5]: def reg_of_interest(image):
image_height = image.shape[0]
polygons = np.array([[(200, image_height), (1100, image_height...