Assignment V K-Means Clustering on Images In this problem, you will use K-means clustering for image compression. Two image files provided in the elearning. The assignment task is to display the images after data compression using K-means clustering for different values of K (2, 5, 10, 15, 20). Is there a tradeoff between image quality and degree of compression? What would be a good value of K for each of the two images? Note that your program must compile and we should be able to replicate your results. Otherwise no credit will be given. What to turn in: 1. Your code and datasets 2. A README for your compiling/using your code 3. A report (pdf or doc file) containing answers to the questions posed. The following code is for reading and writing Image Files: Image to RGB array or RGB array to image: from matplotlib import pyplot as io import numpy as np from PIL import Image # Image to array img1 = io.imread(imagefilename) #image is saved as rows * columns * 3 array print (img1) #Array to image file array = np.zeros([10,20,3], dtype = np.uint8) array[:,:10] = [255, 128, 0] # Orange left side array[:,10:] = [0,0,255] # Blue right side print(array) img2 = Image.fromarray(array) img2.save('testrg.png')