Spaces:
Runtime error
Runtime error
File size: 888 Bytes
4e78e8c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
from sklearn.decomposition import PCA
import numpy as np
def pca_for_rgb(img, n_components):
red = img[:, :, 0]
green = img[:, :, 1]
blue = img[:, :, 2]
try:
pca = PCA(n_components=n_components)
red_transformed = pca.fit_transform(red)
red_inverted = pca.inverse_transform(red_transformed)
green_transformed = pca.fit_transform(green)
green_inverted = pca.inverse_transform(green_transformed)
blue_transformed = pca.fit_transform(blue)
blue_inverted = pca.inverse_transform(blue_transformed)
img_compressed = (
np.dstack(
(red_inverted,
green_inverted,
blue_inverted))).astype(
np.uint8)
return img_compressed
except BaseException:
print("Kindly put valid number of components")
|