text: import matplotlib.pyplot as plt
  import matplotlib.image as mpimg
  import numpy as np
  
  # Read in the image and print out some stats
  # Note: in the previous example we were reading a .jpg 
  # Here we read a .png and convert to 0,255 bytescale
  image = mpimg.imread('test.jpg')
  
  # Grab the x and y size and make a copy of the image
  ysize = image.shape[0]
  xsize = image.shape[1]
  color_select = np.copy(image)
  line_image = np.copy(image)
  
  # Define color selection criteria
  # MODIFY THESE VARIABLES TO MAKE YOUR COLOR SELECTION
  red_threshold = 200
  green_threshold = 200
  blue_threshold = 200
  
  rgb_threshold = [red_threshold, green_threshold, blue_threshold]
  
  # Define the vertices of a triangular mask.
  # Keep in mind the origin (x=0, y=0) is in the upper left
  # MODIFY THESE VALUES TO ISOLATE THE REGION 
  # WHERE THE LANE LINES ARE IN THE IMAGE
  left_bottom = [0, ysize]
  right_bottom = [xsize, ysize]
  apex = [xsize/2, ysize/2]
  
  # Perform a linear fit (y=Ax+B) to each of the three sides of the triangle
  # np.polyfit returns the coefficients [A, B] of the fit
  fit_left = np.polyfit((left_bottom[0], apex[0]), (left_bottom[1], apex[1]), 1)
  fit_right = np.polyfit((right_bottom[0], apex[0]), (right_bottom[1], apex[1]), 1)
  fit_bottom = np.polyfit((left_bottom[0], right_bottom[0]), (left_bottom[1], right_bottom[1]), 1)
  
  # Mask pixels below the threshold
  color_thresholds = (image[:,:,0] < rgb_threshold[0]) | \
                      (image[:,:,1] < rgb_threshold[1]) | \
                      (image[:,:,2] < rgb_threshold[2])
  
  # Find the region inside the lines
  XX, YY = np.meshgrid(np.arange(0, xsize), np.arange(0, ysize))
  region_thresholds = (YY > (XX*fit_left[0] + fit_left[1])) & \
                      (YY > (XX*fit_right[0] + fit_right[1])) & \
                      (YY < (XX*fit_bottom[0] + fit_bottom[1]))
                      
  # Mask color and region selection
  color_select[color_thresholds | ~region_thresholds] = [0, 0, 0]
  # Color pixels red where both color and region selections met
  line_image[~color_thresholds & region_thresholds] = [255, 0, 0]
  
  # Display the image and show region and color selections
  plt.imshow(image)
  x = [left_bottom[0], right_bottom[0], apex[0], left_bottom[0]]
  y = [left_bottom[1], right_bottom[1], apex[1], left_bottom[1]]
  plt.plot(x, y, 'b--', lw=4)
  plt.imshow(color_select)
  plt.imshow(line_image)
  