I am looking for an explicit solution to an object or camera pose, one that does not use any kind of a solver
For simplicity, I would use a square pinhole camera with 90 degree FOV in X and Y
I can create any object in 3D space, for example, a circle, square, a triangle. Where I know it's size and position
I see a perspective projection of this object in the camera, I know the X and Y pixel coordinates of the projection, and I want to reconstruct this object in the camera view. Or alternately, I want to find the location of the camera in the world. (They should be inverse transformations of each other)
If I knew the points in 3D space in camera view, the object transformation would be a simple linear least squares solution, which can be done explicitly via

Where X is a matrix of known points/features in the world and y is a matrix of the respective features on the screen
However, there is no least squares solution for the perspective matrix, as I do not know the depth components of each point/feature seen on the screen
If I used a triangle, with known length sides, using law of cosines, I can calculate the 3D orientation of that triangle w.r.t the camera, but it is not an explicit calculation. i.e I still need a solver to find the length of one of the sides since it's on both sides of the equation.
One option could be to use some kind of features instead of points in a triangle, this way I know their scale, and I don't have to solve for their distance from the camera. But this is fairly inaccurate as it would be hard to tell those small distances apart by measuring object size, if I used a sphere for each point, for example
A coworker mentioned there is a possibility to do this with a circle.
I assume the center of the circle must be visible as well, as there are infinite angles at which a circle can appear the same on camera with different center locations.
This becomes a problem of trying to slice an oval shaped cone (projection from camera) with a plane so that the resulting equation describes the original circle. And constrained by the center that goes through the projected center axis. This doesn't seem like an equation that can be solved explicitly. Can it be done? reference: https://web.ma.utexas.edu/users/m408m/Display10-5-2.shtml
Is there a way to find the pose of an object by using some kind of specific objects without having to iteratively solve for one or more variables?
Thanks,
This famous paper describes a closed form solution using only 4 co planar points http://www.cs.ait.ac.th/~mdailey/cvreadings/Fischler-RANSAC.pdf (Appendix B)