Two of the coordinate systems used in geodesy are (ECEF) cartesians and geographical coordinates. ECEF stands for earth-centred, earth-fixed. Given a point q outside the spheroid, it's geographical coordinates are the latitude and longitude of a point p on the spheroid, such that q is on the normal to the spheroid from p, and the height coordinate is then the distance along the normal from p to q.
Conversion from geographics to cartesians is straightforward, but going the other way requires some sort of iterative process.
For geographic to cartesian we have
x = r * cos( lambda)
y = r * sin( lambda)
z = ((1 - e2)*nu + h)*sin( phi)
where
r = (nu + h)*cos(phi)
nu = a / sqrt(1 - e2*sin(phi)*sin(phi))
phi the (geodetic) latitude, lambda the longitude, h the height
(these names are pretty conventional in geodesy)
Going the other way it's easy enough to get lambda ( atan2( x, y)) and r ( hypot( x,y)) but disentangling phi and h from r and z is a bit tricky.
Some methods are discussed here
One way to approach your problem would be to find the point on the camera line that has minimal height. The point with the same latitude and longitude and 0 height would be the point you seek. It might be advantageous to use a minimisation routione that usese derivates. It's straightforward -- though tedious -- to compute the derivative matrix of the transformation from geographics to cartesians at a point, and then to invert that to get the derivative matrix of the transformation from cartesians to geographics.
A thing to be beware of is that any calculation involving geographic coordinates is likely to blow up at the poles of the spheroid!