<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Title
Step1:  Load image
Step2:  Define Corner Parameters
Step3:  Detect Corners
Step4:  Mark Corners
Step5:  View Image
<ASSISTANT_TASK:>
Python Code:
# Load image
import cv2
import numpy as np
from matplotlib import pyplot as plt
Explanation: Title: Shi-Tomasi Corner Detector
Slug: ski-tomasi_corner_detector
Summary: How to detect corners images using OpenCV in Python with the Shi-Tomasi Corner Detector.   
Date: 2017-09-11 12:00
Category: Machine Learning
Tags: Preprocessing Images  
Authors: Chris Albon
Preliminaries
End of explanation
# Load images
image_bgr = cv2.imread('images/plane_256x256.jpg')
image_gray = cv2.cvtColor(image_bgr, cv2.COLOR_BGR2GRAY)
Explanation: Load image
End of explanation
# Number of corners to detect
corners_to_detect = 10
minimum_quality_score = 0.05
minimum_distance = 25
Explanation: Define Corner Parameters
End of explanation
# Detect corners
corners = cv2.goodFeaturesToTrack(image_gray, 
                                  corners_to_detect, 
                                  minimum_quality_score,
                                  minimum_distance)
corners = np.float32(corners)
Explanation: Detect Corners
End of explanation
# Draw white circle at each corner
for corner in corners:
    x, y = corner[0]
    cv2.circle(image_bgr, (x,y), 10, (255,255,255), -1)
Explanation: Mark Corners
End of explanation
# Convert to grayscale
image_gray = cv2.cvtColor(image_bgr, cv2.COLOR_BGR2GRAY)
# Show image
plt.imshow(image_gray, cmap='gray'), plt.axis("off")
plt.show()
Explanation: View Image
End of explanation
<END_TASK>