9
$\begingroup$

Given the 4 coordinates of a 2D shape in a 3D space I want to calculate its aspect ratio.

The 3D space is created with 2 vanishing points.

The 4 coordinates - marked blue - are the 2D coordinates on the display. in the example they should be roughly (14, 5.5), (19, 5), (20.3, 7.3), (25.3, 6).

I'm not sure if this is possible at all, if someone could find proof that for 2 different aspect ratios the 2D coordinates are the same this problem would be unsolvable.

My exapmle:

enter image description here

$\endgroup$
2
  • $\begingroup$ Can we assume that the corners are 90 degree angles $\endgroup$
    – joojaa
    Commented Nov 29, 2015 at 18:42
  • $\begingroup$ The table's corners are, yes. $\endgroup$
    – succcubbus
    Commented Dec 16, 2015 at 11:56

1 Answer 1

5
$\begingroup$

The ratio is with a quick and dirty visual measurement $665:501$ which is approximately $5:4$. You can measure it by taking the ratio of the vanishing angles $\alpha/\beta$ (see picture 1) because we are so close to the center.

Angles

Image 1: Ratio of the inbound angles

We can check the situation visually by drawing a 2 point perspective grid. For this we need the center line between the vanishing points.

Perspective grid

Image 2: Seems about right.

$\endgroup$
3
  • $\begingroup$ How would one calculate the aspect ratio if we weren't so close to the center? $\endgroup$
    – succcubbus
    Commented Nov 29, 2015 at 21:15
  • $\begingroup$ @succubus there is a lengthy explanation here but you can do this with matrix calculation. Just didnt have time to outline the math. $\endgroup$
    – joojaa
    Commented Nov 29, 2015 at 22:20
  • $\begingroup$ @succcubbus please refer to official help page about merging your account to regain the ownership of the question. $\endgroup$
    – Andrew T.
    Commented Nov 30, 2015 at 10:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.