It can be done. Back in the 1990s certain groups (think radar cross section computation) were working with 1,000,000 x 1,000,000 dense systems. Consistent with other replies, this was done iteratively and out of core.
Let us proceed systematically:
numerical precision of data (you said from medical imaging)
number of operations required for standard methods (as from libraries)
possible out-of-core computation (i.e. not the whole matrix at all times in memory).
In all cases, I am afraid, you would have to be prepared to suffer. Incidentally, out-of-core methods are very ...
Take a look at the literature that does similar things for facial recognition -- search for the term "eigenface", for example.
The point to make in this context is that the information you are looking for does not actually require you to consider high-resolution images. You may have $10,000\times 10,000$ pixels, for which any non-trivial ...
As noted above by Thijs Steel a randomized svd is a solution but the number 78800000 is out of our computers computation ability.So you can proceed to the rsvd algorithm by :
import numpy as np
n = 788
mu = 0
sigma = 1
A = np.random.normal(mu, sigma, (n,n))
Omega = np.random.normal(mu, sigma, (n,n))
def rsvd(A, Omega):
Y = A @ Omega
Q, _ = np....