Hola interesante reto que entiendo de la siguiente manera , tienes un objeto A y otro B en la misma fotografía, y quieres deducir la distancia entre ellos, con el menor margen error. o bien deducir el tamaño real a un de ellos.
Bueno entiendo que en el espacio 3D para lograr la toma, tienes que fijar las tres coordenadas de tres puntos, las del objeto A, las del objeto B y las de la cámara , tenemos 9 coordenadas,
En el espacio plano de la fotografía tenemos, solo 4.
Si de la información de la fotografía, no deduces las 5 faltantes por comparación de patrones (justamente un objeto para comparar) no creo que puedas hacer mucho.
cada punto de la fotografía es una transformación de coordenadas 3D \( (x,y,z) \) o \( (\rho, \theta,\phi) \) a un espacio 2D(x,y) o (r, \gamma), pero si la imagen contiene objetos de referencia, podemos usar esa transformación para que con lecturas 2D obtener, medidas 3D.
Si uno cuenta con información útil como las de las lentes usadas, el diámetro de apertura, tanto mas fácil será el cálculo de la transformación..