IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Panorama 360° 180°


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 96
    Points : 69
    Points
    69
    Par défaut Panorama 360° 180°
    Bonjour,

    Je me pationne depuis un petit moment pour la photographie, et plus particulièrement je réalise des panoramas avec le logiciel autostitch que je trouve pratique à utiliser.
    Une retouche et un recadrage dans photoshop me permet d'avoir un résultat pas trop mal.

    Dernièrement, on m'a envoyé le lien suivant : http://www.gillesvidal.com/rue89/airbusA380.htm qui montre un panorama apparement développé en flash, mais surtout qui permet à l'utilisateur de naviguer dans la prise de vue.

    A partir de mes recherches, j'ai trouvé une technologie équivalente, QuickTimeVR. J'ai obtenu un résultat un utilisant un logiciel dont j'ai oublié le nom. Mais un résultat sur une seul ligne d'horizon.

    Ma question est donc la suivante :

    Connaissez-vous le logiciel ou la tecnique permettant de réaliser un panorama sphérique appellé aussi 360°-180°?

    Merci pour vos réponses.

  2. #2
    Membre expérimenté

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Points : 1 679
    Points
    1 679
    Par défaut
    Ce n'est pas si compliqué que cela (en théorie)

    Il faut que tu refasses la projection point par point.

    En pratique on suppose que tu passes par un stockage intermédiaire de la sphère environnante. Par exemple les jeux video aiment beaucoup utiliser les cube maps/sky maps parce que c'est le moyen le plus simple qui existe pour texturer une sphère (sans trop de déformation/stretching). C'est un cube qui est centré sur l'utilisateur/point de vue et qui contient l'image de l'environnement projetée sur chaque face (six faces par cube).
    Pour construire la cubemap tu peux faire comme tu as créé ta vue panoramique. Un logiciel va te permettre de mettre tes prises de vue bout à bout et de configurer la vue pour un FOV fixe à 45 degré (l'angle couvert par une face du cube). PAS un point de vue panoramique mais simple projection conique sur un plan ! Répéter pour chaque face du cube.
    Ensuite afficher le cube centré sur l'utilisateur (tu peux le faire dans OGL ou D3D) et avec les commandes de rotation, zoom, simuler le mouvement dans toutes les direction.

    J'avais écrit un mini article sur le cubic environment mapping :
    Cubic environment mapping. Même si c'est dans le contexte d'un raytracer le principe est le même quel que soit le médium (ray tracing, ogl, d3d, flash, java etc.).

    Sinon la sphère c'est aussi 4 * pi stéradians

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 96
    Points : 69
    Points
    69
    Par défaut
    Merci pour ta réponse.

    J'ai compris le principe du cube avec la position de l'utilisateur au centre.
    Mais je me demande si avec seulement 6 photos, je peux réussir à prendre la totalité de mon champs de vision !!!

    J'ai testé hier soir un tutoriel en flash (lien) . J'ai obtenu un résultat plutôt interessant mais seulement sur une ligne d'horizon. Ca ne résoud donc pas mon problème.
    Je conseil tout de même ce tuto. Après reflexion, je peux peut être l'adapter pour obtenir une vue 360° 180°.

    Un logiciel va te permettre de mettre tes prises de vue bout à bout et de configurer la vue pour un FOV fixe à 45 degré (l'angle couvert par une face du cube). PAS un point de vue panoramique mais simple projection conique sur un plan ! Répéter pour chaque face du cube.
    J'avoue ne pas avoir compris la deuxième partie de ta réponse. As tu des exemples de logiciel à me citer? ou alors un article expliquant plus en détail ce procédé?
    Je n'ai pas eu le temps de lire le lien concernant un de tes articles (raytracer) , peut être que ca va répondre à mes attentes.

    Ensuite afficher le cube centré sur l'utilisateur (tu peux le faire dans OGL ou D3D) et avec les commandes de rotation, zoom, simuler le mouvement dans toutes les direction.
    J'ai une expérience OpenGL avec du java, je vais peut etre m'en sortir avec ca.

    BILAN : j'ai l'impression d'etre loin du résultat souhaité....

  4. #4
    Membre expérimenté

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Points : 1 679
    Points
    1 679
    Par défaut
    Citation Envoyé par [ced] Voir le message
    J'ai compris le principe du cube avec la position de l'utilisateur au centre.
    Mais je me demande si avec seulement 6 photos, je peux réussir à prendre la totalité de mon champs de vision !!!
    Il ne s'agit pas de prendre 6 photos.. Tu prends autant de photos que nécessaire pour couvrir tout l'environnement (dépend de ton angle de prise de vue et aussi du nombre de photos dont tu as besoin pour une bonne reconstruction sans artefacts ou déformations).
    Ensuite tu reprojettes ces photos sur un cube. C'est probablement la partie la plus dure qui nécessite de faire quelques maths ou d'avoir un logiciel d'auto-assemblage (solution facile) qui te permet de changer facilement le point de vue. Je ne connais pas assez auto stitch mais peut-etre en fouillant dans les paramètres..
    Pour ma cube map dans le tutorial ci dessus, j'ai utilisé un soft de rendu de paysage et je lui ai dit : prends un screenshot à l'est, au sud, au nord, à l'ouest, en haut, en bas, avec un (demi)fov fixe de 45 degrés et une taille d'image carrée de SizexSize. Ce sont les faces de mon cube.

    Citation Envoyé par [ced] Voir le message
    J'ai testé hier soir un tutoriel en flash (lien) . J'ai obtenu un résultat plutôt interessant mais seulement sur une ligne d'horizon. Ca ne résoud donc pas mon problème.
    Je conseil tout de même ce tuto. Après reflexion, je peux peut être l'adapter pour obtenir une vue 360° 180°.
    Tu ne peux pas l'adapter pour un rendu sphèrique (enfin tu pourrais peut-etre bidouiller quqch pour regarder en haut et en bas mais tu n'aurais pas le même rendu que pour les photos de Gilles Vidal). Ce que fait le tutorial en flash est une simple translation d'image. Il ne fait pas de reprojection. De plus texturer un cylindre est relativement facile par rapport à la sphère. (un cylindre mis à plat est un un rectangle cf feuille de papier agrafée en tube, une sphère mis à plat est .. rien du tout).

    Citation Envoyé par [ced] Voir le message
    J'avoue ne pas avoir compris la deuxième partie de ta réponse. As tu des exemples de logiciel à me citer? ou alors un article expliquant plus en détail ce procédé?
    Je n'ai pas eu le temps de lire le lien concernant un de tes articles (raytracer) , peut être que ca va répondre à mes attentes.
    Cf plus haut, il faut soit écrire un logiciel qui assemble tes images en cube maps, soit utiliser un logiciel existant.
    Depuis ce logiciel créer les points de vue haut, bas, nord, sud, est, ouest.
    Une fois les faces du cube obtenu, texturer un cube centré sur la caméra (ou si tu es en flash et action script simplement faire les maths de projection du cube sur l'écran).

    LeGreg

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

  5. #5
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Ced comme le dis Le Greg tu ne peux pas créer des primitives en Open GL et projeter les photos/images dessus si tu connais Open GL ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 96
    Points : 69
    Points
    69
    Par défaut
    Merci Mat et Legreg pour vos réponses.

    J'ai trouve le soft FlashPanoramMaker qui permet de générer les panos.
    Cette solution est beaucoup plus simple à appliquer sur les images.

Discussions similaires

  1. Panorama 360° 180°
    Par [ced] dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 28/03/2008, 15h37
  2. Panorama
    Par roms18 dans le forum OpenGL
    Réponses: 4
    Dernier message: 17/10/2005, 22h22
  3. Rotation horizontal à 180 ° (miroir) d'un texte
    Par ^Cali^ dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 16/04/2005, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo