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 :

appareil photo capable de capter la profondeur au pixel


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 18
    Points : 27
    Points
    27
    Par défaut appareil photo capable de capter la profondeur au pixel
    salut a tous,

    certain trouveront peut etre ma question quelque peu etrange, mais bon apres de longues recherches inutiles j'ai decidé de m'en remettre a vous.

    existe t-il un appareil photo qui soit capable lorsqu'il prend une photo de capturer aussi la profondeur approximative de chaque pixel ?, bien entendu je parle que de photo prises de tres tres pres (sur une texture a quelques centimetres).

    il existe bien des dispositifs capable d'envoyer une sorte de laser qui va rebondir sur une surface et retourner approximativement la profondeur de celle ci (j'imagine bien que la lumiere envoyée doit tapper sur une surface parfaitement parralele a la source et que la surface doit etre reflechissante).

    mais n'y a t-il pas d'autres moyen que le laser de le determiner ?, esque ce genre de dispositif existe quelque par sur cette planette ? (photo + profondeur en meme temp)


    ps: vous aurez compris que mon but est d'extirper ces infos de profondeur et de les utiliser en tant que bump-map

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    27
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2006
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Ce système s'il existe est très complexe et ne peut etre adapté sur un appareil portable type appareil photo (du moins pour le moment). Cela nécessiterait en plus une parfaite stabilité de l'appareil et, comme tu le dis, de pouvoir connaitre avec grande précision (liée à la résolution de l'image) l'angle de visée sur l'objet cible. En robotique, des recherches portent sur le moyen de mesurer avec précision la distance à chaque élément de l'environnement de la machine.

    PS: tu n'as plus qu'a prendre ta règle et mesurer les profondeurs toi-même

  3. #3
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    il y a effectivement des solution experimentales du type ca ou encore ca mais je doute que ce soit disponible pour le grand public
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  4. #4
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 130
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par bafman
    il y a effectivement des solution experimentales du type ca ou encore ca mais je doute que ce soit disponible pour le grand public

    Exactement, c'est possible avec un simple appareil photo, voire 2 mais il faut que ce soit les mêmes (mêmes objectifs...).

    J'ai fait ça à l'époque à la fac.

    Le plus dur est de trouver les algos qui vont calculer la 3d depuis les 2 images 2d mais ça doit pas être compliqué à calculer soi-même si t'es matheux.

    Je me rappelle qu'il fallait une mire (quadrillage), configurer la configuration des 2 caméras (un algo s'en occupe suivant la mire) et ensuite capturer l'objet.

    Nous utilisions un logiciel commercial, mais on doit pouvoir trouver des algos libres.

    Bonne chance en tout cas.

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mars 2007
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    Effectivement avec une prise de 2 angles différents on peut recuperer les données (x,y,z) c'est la technique utilisée pour les capture de mouvement 3d le cas simple c est une prise de face et de coté après un bon calibrage des repères et on supposons la presence d'une seul source de lumière pour étudier son intensité à chaque pixel et calculer le cosinus directeur du produit scalaire du vecteur normale et vecteur directionnel de la lumière I = abs(cos(N,L)) on obtient l'algo suivant
    Face : (z(i+1,j)-z(i;j)) ^2+(z(i,j+1)-z(i,j))^2=tan(teta1(i,j))^2
    Front : (y(i+1,j)-y(i;j)) ^2+(y(i,j+1)-y(i,j))^2=tan(teta2(i,j))^2
    teta = angle(N,L)
    x(i,j),y(i,j),z(i,j) désignant les points de la grille de surface 3d
    mais pour cela il faudrait ajouter d'autres outils commodes pour modeler la surface manuellement en raison de faire quelque petites corrections nécessaire car l'algo ne suffit pas à tout faire c'est difficile mais si tu arrive à développer un tel logiciel ça serait plutot cool est pas une perte de temps

  6. #6
    Membre régulier Avatar de O( N )
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2006
    Messages : 126
    Points : 120
    Points
    120
    Par défaut J'ai une question à ce sujet
    Bonjour,

    je vais poser une question bête, je préfère la poser,
    car il me semble que j'ai déjà vu ce sujet autour d'un documentaire ! (je ne sais plus lequel )

    Sachant que nous avons deux yeux, notre cerveau gère la troix dimension => la profondeur.

    Si nous naissons avec un seul oeil le cerveau donnera t il quand même une profondeur ?

    Si oui, dans ce cas, notre seul oeil ne serait qu'une caméra !

    (Le hic, il me semble est le fait que l'on se déplace et donc le cerveau serait capable de nous donner la profondeur ?)

    Sinon la méthode usitée par le cerveau pour le coup ne gèrerait qu'avec une seule prise photo !

    Donc sans laser, ni deux photos décalées, ce serait possible ?

    Petite expérience : regarder une photo en fermant un oeil !
    Pouvons nous donner les profondeurs ? (oui, cela vient du fait que nous connaissons les objets => pas de calcul ici))
    Dans la vie il faut se cultiver ! Je suis développeur,
    je cultive des bogues.

    Citer c'est avouer qu'on a les mêmes idées que d'autres
    sans être capable de faire des phrases soit même ! - moi

  7. #7
    Membre habitué
    Lycéen
    Inscrit en
    Juillet 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 32

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juillet 2007
    Messages : 148
    Points : 145
    Points
    145
    Par défaut
    Ben si maintenant tu pers un oeil, tu sera pas vraiment géné dans ta vie de tous les jours, car tu connais les distances entre les objets que tu es habitués a voir, pareil pour un mec qui est né avec un seul oeil, mais qui s'y est habitué. Par contre, mets toi dasn un endroit complètement inconnus, avec un seul oeil ouvert, t'aura un peu du mal à apprecier les distances.

  8. #8
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    Citation Envoyé par O( N )
    Bonjour,

    je vais poser une question bête, je préfère la poser,
    car il me semble que j'ai déjà vu ce sujet autour d'un documentaire ! (je ne sais plus lequel )

    Sachant que nous avons deux yeux, notre cerveau gère la troix dimension => la profondeur.

    Si nous naissons avec un seul oeil le cerveau donnera t il quand même une profondeur ?

    Si oui, dans ce cas, notre seul oeil ne serait qu'une caméra !

    (Le hic, il me semble est le fait que l'on se déplace et donc le cerveau serait capable de nous donner la profondeur ?)

    Sinon la méthode usitée par le cerveau pour le coup ne gèrerait qu'avec une seule prise photo !

    Donc sans laser, ni deux photos décalées, ce serait possible ?

    Petite expérience : regarder une photo en fermant un oeil !
    Pouvons nous donner les profondeurs ? (oui, cela vient du fait que nous connaissons les objets => pas de calcul ici))
    en fait, la perception 3D de l'humain est très limité dans la distance (de 30 centimetre à 5 metres si je me souvient bien) après, le cerveau passe tout en 2D, et l'ensemble du traitement des distances se fait à partir de l'echelle (plus c'est petit, plus c'est loins... d'ou la possibilité de créer certaines illusions d'optique).
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Points : 440
    Points
    440
    Par défaut
    Citation Envoyé par O( N )

    Si nous naissons avec un seul oeil le cerveau donnera t il quand même une profondeur ?
    Ferme un oeil et bouge la tete pour te convaincre que non ... tu peux meme poser un objet sur une table et tu verras que tu as un peu de mal a l 'attrapper (bien sur, suivant l eclairage et les ombres portees apportent des informations visuelles bien utiles meme qu avec un seul oeil)

    Tu connais probablement les lunettes vertes et rouges qui permettent de voir une image (sous un format un peu particulier c est vrai) des objets en relief .... c est ce que l on appel la stéroscopie.

    La lentille verte masque la partie verte de l image (idem pour la lentille rouge).
    Chaque oeil voit donc deux images legerement differentes et c 'est de la que vient l effet de profondeur.

    Par exemple au futuroscope, il y a une animation qui fait exactement la meme chose, mais avec des images projetees directement dans le lunettes ... ce qui evite de restreindre les couleurs a rouge et vert.


    Pour en revenir au probleme initial, si tu veux recupérer une info d'elevation a partir d 'un appareil photo, tente plutot de faire un film en scrollant l appareil photo et de faire des calculs sur les differencielles de couleurs pour chaque pixel (attention c'ets infinement plus facile a dire qu'a faire).

    C'est par cette maniere que l on est capable d'obtenir des cartes d elevations de la Terre par exemple (a l aide d un satelite bien sur). Ce genre de méthode implique bien sur que les couleurs varient sur ta surface (impossible par exemple de calculer l elevation de la mer comme ca pour en revenir a mon exemple précedent)

    note supplementaire : attention aux surfaces fortement spéculaires

    méthode annexe : faire tourner un eclairage autour de ta surface (globalement plane bien sur) et observe les ombres portee

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 18
    Points : 27
    Points
    27
    Par défaut
    salut,

    desolé pour le retard je n'avais plus internet pendant un bon moment
    merci pour vos reponses a tous c'es tres simpa .

    le soucis dans le fait d'essayer d'approximer l'elevation avec plusieurs prises de vues c'est que c'est assé fastidieu de prendre plusieurs clichés d'une meme texture, ce qui serai bien c'est un appareil avec plusieurs objectifs integrés qui te pond la carte d'elevation comme un grand (bien que ca ne me semble pas ultra difficile a determiner une fois que tu as les angles et distances de tes prises de vues les unes par rapport au autres :p).

    http://www.pokescope.com/products.html
    esque ca vaut le coup ?

    O( N ):
    en fait tu apprend a evaluer les distance des profondeurs simplement en comparant, quand tu sais la taille qu'a un objet (instinctivement) ton cerveau sais comparer l'objet qui est a coté de lui (question d'experiance quoi).

    maintenant si on imagine qu'on retrouve dans une immance salle completement blanche sans aucun repaire, si on regarde fixement une direction et que par enchantement un objet apparait il sera impossible d'evaluer sa distance sans repaire autour de lui.
    mais si on peut se deplacer on peut se faire une idée de sa distance (mais pas forcement de sa taille).

    en 3D c'est exactement la meme chose, les unités de mesure on les crée nous meme pour pouvoir evaluer les objets entre eux (et on se base sur des formules mathematiques eprouvés pour essayer de se rapprocher au maximum de la réalitée).

    ps: d'ailleur pourquoi esque tout les animaux (meme les insectes) ont 2 yeux ? puisque le cerveau peut tres bien se debrouiller avec un seul ?

  11. #11
    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 orand Voir le message
    ps: d'ailleur pourquoi esque tout les animaux (meme les insectes) ont 2 yeux ? puisque le cerveau peut tres bien se debrouiller avec un seul ?
    Pourquoi deux oreilles, deux hémisphères de cerveau, deux bras, deux jambes, deux reins, deux narines, des paires de chromosomes ?

    Il semblerait que la nature aime la symétrie ou en tout cas la redondance (comme pour les disques durs montés en RAID) ce qui doit faciliter les choses en cas de perte de l'un d'entre eux.

    L'avantage apporté par les deux yeux diffèrent aussi suivant les animaux. Les prédateurs ont plutot les yeux qui pointent dans la même direction ce qui leur permet d'augmenter leur précision (via stéréo et plus grande acuité dans la zone pointée par les deux yeux, sans parler du recouvrement de la zone aveugle de chaque oeil). Les herbivores ont plutot les yeux sur les cotés pour couvrir un plus grand angle et détecter les mouvements devant et derrière.

    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

Discussions similaires

  1. Quel appareil photo numérique choisir ?
    Par mat.M dans le forum Périphériques
    Réponses: 11
    Dernier message: 20/04/2006, 18h28
  2. Réponses: 14
    Dernier message: 26/03/2006, 19h27
  3. DD et Appareil Photo
    Par cjacquel dans le forum MFC
    Réponses: 1
    Dernier message: 28/12/2005, 11h39
  4. Images & Appareil Photo
    Par cjacquel dans le forum MFC
    Réponses: 2
    Dernier message: 24/12/2005, 14h46
  5. [.Net] Appareil photo numérique
    Par GéniuS77 dans le forum Framework .NET
    Réponses: 2
    Dernier message: 20/11/2005, 13h25

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