module inscription newsletter haut de page forum mobile

Rejeter la notice

formations etalonnage sur davinci resolve

Nos Formations Etalonnage avec Forest reviennent en octobre !
Adoptez une réelle méthodologie d'étalonnage professionnelle et atteignez vos objectifs créatifs avec nos formations intensives sur 3 jours
Toutes les infos
Rejeter la notice

ateliers live resolve avec forest

Ateliers Live Resolve - Formez-vous en ligne tous les mois avec Forest !
Faites rapidement évoluer la qualité de vos étalonnage avec nos ateliers mensuels de 3h.
Toutes les infos
Rejeter la notice

Formation Lumière - Pratique Intensive du 14 au 16 octobre à Paris
Formez-vous avec cet atelier de pratique intensive dans des conditions exceptionnelles ! Formation finançable.
Toutes les infos

Ateliers et Formations

Script pour Tracking 3D

Discussion dans 'Adobe After Effects' créé par Sequelles, 25 Mars 2006.

Tags:
  1. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Ca doit demander beaucoup de connaissances mathématiques et géométriques mais à priori, un script pourrait faire du tracking 3D. On part du principe que la caméra a une focale fixe (pas de zoom durant le plan) on track un ensemble de points sur le décors (ces points ne bougent pas entre eux). Et le script calcul la perspective, crée une caméra animée avec le bonne angle d'ouverture et différents objets nuls dans l'espace à chaque point suivi.

    Voilà le script qui va t'empécher de dormir nab :D
    Un script qui évite de passer par un autre soft (cher) comme MatchMover ou Boujou. En gros ça évite de sortir l'artillerie lourde si c'est juste pour placer un texte sur un calque 3D qui semble tenir en l'air dans le décor et ne pas glisser quand la caméra se déplace.
     
    #1 Sequelles, 25 Mars 2006
    Dernière édition: 29 Mars 2006
  2. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    Je n'y connais pas grand chose en script mais je connais un peu la théorie qui est derrière ce genre de programme. Ce type de calcul n'est possible que si la caméra se déplace(ou l'objet filmé) et ce sont les différents décalages des points trackés qui permettent de remonter au calcul des coordonnées. Donc pour chaque frame, il faut connaître au minimum les positions de points trackés dans la frame précédente et il me semblait avoir lu sur le forum que les scripts ne permettaient pas d'avoir accès à des variables calculés aux frames précédentes, j'ai mal compris?

    EDIT:si on n'a pas accès aux variables des frames précédentes,a-t-on accès dans les scripts aux vitesses des points trackés? Si c'est le cas, ça change la donne....
     
  3. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Tu confonds avec les expressions où on ne peut pas conserver une variable d'une image à l'autre (il faut la recalculer à chaque fois). Mais là de toute façon les valeurs sont stockées dans les Point de piste et sont donc facilement accécible.

    Le problème c'est purement des math et de la géométrie.

    Sur un exemple simple: J'ai trois points A,B et C dans mon image dont j'ai suivi les coordonné (x,y) sur deux angles de vue différents. Quel calcul permet de récupérer d'après A1x,A1y, B1x,B1Y, C1x,C1y et A2x,A2y, B2x,B2Y et C2x,C2y... les 2 positions xyz de la caméra au deux moments, sont angle de vue et les coordonnée dans l'espace xyz des points suivis.

    12 variables me donne un résultat à 16 dimension.
     
    #3 Sequelles, 25 Mars 2006
    Dernière édition: 25 Mars 2006
  4. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    "Tu confonds avec les expressions"-> ok
    "Le problème c'est purement des math et de la géométrie"-> et de la physique [​IMG]


    En gros, quatre étapes:
    1°) si tu prends deux points dont tu connais la vitesse de déplacement sur ton écran:
    z1/z2=v2/v1 à condition qu'ils se déplacent à la même vitesse(ça peut être une vitesse relative, c'est à dire le paysage est stable mais la caméra bouge, par contre ce n'est valable que si la caméra se déplace latéralement, sans rotation. Je compliquerai plus tard s'il y a rotation mais il faut que je fasse le calcul avant). En faisant ça pour chaque couple de point on se retrouve avec un ensemble de profondeurs relatives.
    2°) c'est là que ça se complique: Il nous faut connaître la profondeur d'un des points(et du coup toutes les autres sont connues). Pour cela, je ne vois pas de solution simple sauf une: c'est l'utilisateur qui donne ce renseignement pour le point de son choix... :rolleyes:
    3°) Connaissant la distance focale de la caméra lors de la prise de vue, il faut appliquer Thalès pour chaque point, on connaît ainsi toutes les coordonnées des points trackés
    4°) Du coup on connaît toutes la vitesse réelle des objets(ou de la caméra si c'est en relatif). Là encore un petit truc m'échappe: comment distinguer les modifications dues au mouvement des objets ou au mouvement de la caméra. Si on attribue tout à la caméra (objets fixes), la vitesse calculée pour n'importe quel point est en fait la vitesse de la caméra et du coup on connait la nouvelle position de la caméra (Xc=Vx*t+Xc(frame-1) avec t, le temps entre deux frames,Yc=Vy*t+Yc(frame-1) et idem pour Zc). Ceci n'est vrai que si la caméra ne fait pas de rotation (dans le cas d'une rotation, ça se complique...)
     
    #4 sylv, 25 Mars 2006
    Dernière édition: 25 Mars 2006
  5. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Je pense qu'il faut privilégier cette approche: ne suivre que des points fixes entre eux, et ne pas suivre des objets en mouvement par rapport au décor. Mais par contre on ne connait pas la focale au départ.
     
  6. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    Vive les exif...;) Je vais manger et j'y réfléchis après...
     
  7. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    S'il n'y pas deux points à la même distance de l'objectif, c'est chaud... Je retenterai ce soir....

    Edit:de toute façon, pour avoir la distance focale en cm il faut au moins connaitre la taille du capteur ccd. Du coup, on ne peut pas dire que l'utilisateur connait aussi la distance focale utilisée? ;)
     
  8. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    C'est pour ça qu'il faut mieux raisonner avec l'angle d'ouverture
     
  9. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    Edit: oups, je n'ai rien dit....
     
  10. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Un des gros problèmes est que les positions des trackers doivent être considérées comme des approximations.

    Pour avancer il faudrait trouver un lien vers un travail universitaire traitant de ce problème d'optique (géométrie mathématique). A moins qu'un fort en math comme oscarus soit toujours dans les parages.
     
  11. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    Mais qu'est ce qu'ils t'ont fait les physiciens? ;) Ce problème n'est que de l'optique géométrique (qui utilise des outils mathématiques mais bon...) Pour ce qui est des écarts, encore une fois merci la physique :amour: : il faut faire une moyenne des valeurs, supprimer les valeurs présentant un écart trop important et ça roule. On peut pourquoi pas imaginer un lissage supplémentaire sur les valeurs finales.
     
  12. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    J'adore la physique, mais selon moi ce problème relève au départ de l'optique théorique, un problème de geométrie dans un espace formel. En gros on est d'accord c'est juste une question de terme.

    Mais par rapport à l'exemple des trois points, de toutes façon ça ne marche pas. L'image de trois points vu de deux angles différents ne permet pas de retrouver la position de ses points dans l'espace ni la position de la caméra.
     
  13. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    Pourquoi ça ne marche pas? Le fait qu'il faille donner la distance focale ne me semble pas si problématique. A présent si l'utilisateur ne connait vraiment pas la distance focale mais connait par exemple la distance qui sépare deux points, la distance focale est calculable(thalès de nouveau).
     
  14. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Je pense qu'il faut suivre 4 points. Et pour que ce soit intéressant il faut pouvoir l'utiliser sur un plan dont on n'a pas assuré la prise de vue, donc on ne connait pas la focale ni les distances entre les points.
     
  15. sylv

    Points Repaire:
    1 000
    Recos reçues:
    0
    Messages:
    497
    Appréciations:
    +0 / 0 / -0
    Pour l'intérêt de la chose tu as 100% raison mais pourquoi veux-tu 4points minimum? Deux points et l'information de distance sur un suffit. Par contre plus le nombre de points sera important, plus le résultat a des chances d'être précis: un peu pour éviter les erreurs venant des points mal trackés et beaucoup pour parvenir à décomposer les mouvements en calculant la composante due aux rotations et celle due aux translations.
     
Chargement...

Dernières occasions

 

Partager cette page