Too late for an answer to the question posed, but since the question is getting comments asking for more help, I'll post an answer.
The simple answer is to not worry about images at all. Since the question is how to compute the SVD, effectively by use of eig, just start with any array.
So A is just a small random matrix. Small, so we can see what is happening easily.
Can we find the same solution using eig?
This should compare to the diagonal elements of S, but since we formed A'*A, the eigenvalues are the SQUARE of the singular values. And, oh, by the way, eig does not really worry about the order.
So now the eigenvalues and the singular values match up. But how about the eigenvectors of A'*A, and the corresponding singular vectors found in V?
The columns of V1 and V are essentially the same, but for the ordering issue, and oh, by the way, you do know that eigenvectors and singular vectors can be arbitrarily multiplied by -1 and still be completely valid? So some of the vectors can have their signs flipped. Still as good as the same.
Next, consider A*A'.
Are these the same as the singular values we gound above?
First, notice there are now 5 eigenvectors, and 5 eigenvalues. That is because A had more rows than columns, so A*A' is a 5x5 matrix.
So you need to understand the linear algebra now. What is the rank of the matrix A? A has rank 3. So if I multiply A*A', that product matrix cannot have a higher rank that either of the terms in the product. The result will still have rank 3. So the product matrix must now have two ZERO eigenvalues. And of course, the non-zero singular values will be squared.
The zero singular values that we found will generally only be approximately zero, so on the order of eps.
And again, when we look at the eigenvectors as columns of V2, we see the three vectors that correspond to the non-zero eigenvalues may arbitrarily have their signs flipped. Again, that is completely arbitrary and irrelevant. But how about the eigenvectors for the zero eigenvalues? Why are they not the same as those last two columns of U?
This really needs an understanding of linear algebra. Some reading would help, or better yet, a course on linear algebra.
But the two nullspace singular vectors are merely one pair of vectors that span the nullspace of the columns of A.
Because that subspace is 2-dimensional, we can find infinitely many linear combinations of those two vectors that span the same subspace. eig(A*A') arbitrarily finds two other such vectors. As such, we can find the linear transformation matrix that will exactly rotate one of those pairs of vectors into the other.
Again, the two sets of vectors are just a different (but equally valid) way to define a basis for the nullspace of the columns of A.
If you want to apply this to an image, an image is just an array of numbers, just as I did. And of course, it will be a larger array than my simple test case, but what I did will still be equally valid.
Finally, there may be some issues in the tiny singular values, because when you form A*A' and A'*A, you are effectively squaring things. And that can cause problems because you are only working in double precision arithmetic. That means the SVD will be far more capable of accurately expressing those small singular values and the corresponding singular vectors, because the SVD does not form those product matrices. Using EIG is NOT how you normally want to compute the SVD, even if only for this reason.