Question

Nous avons une grille avec des carrés rouges. Cela signifie que nous avons un réseau de 3 carrés (avec des angles de 90 °) dont on sait avoir la même taille, la position couchée sur le même plan et avec la même rotation par rapport au plan qu'ils sont couchés sur, et ne sont pas situés sur la même ligne sur avion.

Nous avons une projection de l'espace qui contient de l'avion avec des carrés.

im 1

Nous voulons tourner notre projection plane avec des carrés afin que nous verrions comme il est en face de nous, en général nous avons besoin d'une formule pour transformer chaque point de cette projection plane d'origine afin qu'il soit en face de nous comme sur l'image ci-dessous .

Quelles formules peuvent être utilisées pour résoudre ce problème, comment le résoudre, a une face quelque chose comme ça avant?

im 2

Était-ce utile?

La solution

Ceci est un cas particulier de trouver des correspondances entre les quadrilatères qui préservent les lignes droites. Ceux-ci sont généralement appelés homographes transformées. Ici, l'un des quadriceps est un carré, donc c'est un cas particulier populaire. Vous pouvez google ces termes ( « quad quad », etc.) pour trouver des explications et le code, mais voici quelques-uns pour vous.

Perspective Transformer Estimation

une discussion de forum de jeu

extraire une image d'un quadrilatère rectangle

projective gauchissement & Mapping

ProjectiveMappings pour ImageWarping par Paul Heckbert.

Le calcul est pas particulièrement agréable, mais il est pas difficile non plus. Vous pouvez également trouver un code de l'un des liens ci-dessus.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top