I am trying to do a Singular Value Decomposition of this image:

taking the first 10 values. I have this code:
from PIL import Image
import numpy as np
img = Image.open('bee.jpg')
img = np.mean(img, 2)
U,s,V = np.linalg.svd(img)
recon_img = U @ s[1:10] @ V
but when I run it it throws me this error:
ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 9 is different from 819)
So I think I do something wrong when I do the reconstruction. I am not sure of the dimensions of the matrix np.linalg.svd(img) creates.
How can I solve?
Sorry for the english
