CS6375 Assignment V K-Means Clustering on Images solution

$29.99

Original Work ?
Category: You will Instantly receive a download link for .ZIP solution file upon Payment

Description

5/5 - (8 votes)

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’)