Un sujet AR

Section dédiée à la VR avec Unity
DavidArles
Messages : 33
Inscription : 11 Fév 2023 21:29

Un sujet AR

Message par DavidArles » 12 Fév 2023 19:02

Bonsoir à tous,

Débutant sous Unity, je souhaite développer une application de Réalité Augmentée concernant le patrimoine de ma ville via la caméra d'un smartphone.
En gros je souhaite que le visiteur puisse voir des objets apparaître, soit pour un jeu pédagogique (un papyrus au sein d'un monument antique) soit la possibilité de voir une colonne qui a disparu dans un monument restauré.
Pour cela, je suis deux formations Udemy que j'ai achetée, mais les versions d'Unity utilisée datent de 2017, alors que je suis sur Unity 2021 :
https://www.udemy.com/course/realite-au ... 6#overview

https://www.udemy.com/course/maitriser- ... 8#overview

En ce sens, je voulais savoir si certains forumeurs ont déjà développé des applis en ce sens, ou si vous avez des pistes de tuto qui correspondent à mon projet.
Vous en remerciant tous par avance !

David

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Un sujet AR

Message par boubouk50 » 13 Fév 2023 09:41

Salut,

je n'ai pas accès aux liens mais déjà, je peux te dire qu'il te faudrait plutôt passer par ARFoundation (solution native de Unity) et pas Vuforia, qui laisse sérieusement à désirer depuis quelques années.

Pour le reste, je t'invite à aller plus loin dans ta réflexion sur le fonctionnement de l'application : comment souhaites-tu faire la détection ? Par géolocalisation, marqueur, reco 3D, etc ?
Je pourrais te répondre quand tes questions seront moins larges.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

DavidArles
Messages : 33
Inscription : 11 Fév 2023 21:29

Re: Un sujet AR

Message par DavidArles » 13 Fév 2023 21:12

Salut,
Merci pour la réponse!
J'ai fait des recherches Vuforia VS ARFondation...La conclusion est que ce dernier est surtout destiné aux jeux, alors que Vuforia a l'air plus complet pour de l'AR.
Alors pour ce que je connais je dirais plutôt marqueur (?) si l'idée consiste à faire des ImageTarget avec GroundPlane (désolé si je suis confus mais c'est le novice qui écrit ;)
Par géoloc ça m'a l'air intéressant mais comment s'y prendre?
Concernant la reco3D, ça me parait plus complexe car je n'ai pas encore de connaissance 3D (ex modéliser une colonne)
Voilà merci! :)
David

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Un sujet AR

Message par boubouk50 » 14 Fév 2023 09:34

"Destiné au jeu".
Le savon à main est destiné aux mains mais il nettoie aussi le reste du corps ;-)
Quel que soit le domaine utilisé, cela reste de l'AR. Je développe des solutions numériques pour les musées avec Unity, j'utilise exactement les mêmes outils que pour la création de jeu.

En ce qui concerne la détection, le plus simple et abouti reste la détection d'image en effet. Dans ce cas, il faut que l'utilisateur sache où se situe le marqueur. La géolocalisation pourrait alors intervenir pour donner cette information à l'utilisateur par exemple (sans parler de AR via géolocalisation).
Il est plus simple pour le système de n'avoir à détecter que le minimum de cibles dans un flux vidéo, cela permet donc de limiter cette recherche et donc de l'optimiser.

Concernant la détection par géolocalisation, les tests que j'avais effectué il y a presque 7-8 ans n'étaient pas vraiment concluant. C'était très approximatif et surtout utilisable pour de gros objets. Par exemple, situer un futur complexe architectural pour se faire une idée, je ne pense pas que ce soit adapté à ton besoin.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

DavidArles
Messages : 33
Inscription : 11 Fév 2023 21:29

Re: Un sujet AR

Message par DavidArles » 18 Fév 2023 19:55

Bonsoir Boubouk :)
"Destiné au jeu".
Le savon à main est destiné aux mains mais il nettoie aussi le reste du corps ;-)
Quel que soit le domaine utilisé, cela reste de l'AR. Je développe des solutions numériques pour les musées avec Unity
Depuis ta réponse j'ai donc éliminé Vuforia de mes options et me suis initié à ARFoundation :)
Tu développes des solutions numériques pour les musées, alors je pense être tombé sur le correspondant idoine :)
En ce qui concerne la détection, le plus simple et abouti reste la détection d'image en effet. Dans ce cas, il faut que l'utilisateur sache où se situe le marqueur. La géolocalisation pourrait alors intervenir pour donner cette information à l'utilisateur par exemple
C'est exactement la réponse que j'ai eue sur un autre forum dont l'utilisateur stipule :
Pour moi, il faut :

avoir la position + orientation de l'utilisateur ;
avoir la position de l'objet à afficher


Et dans un tel cas (utilisation du GPS), on pourra facilement afficher un objet, car en connaissant la position de l'utilisateur, cela revient à implémenter une caméra virtuelle dans l'application


En ce sens, est il possible d'intégrer ces données dans Unity, via code ou autre?

Merci!!

David

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Un sujet AR

Message par boubouk50 » 20 Fév 2023 09:31

Mes connaissances directes en terme de géolocalisation sont devenues obsolètes du fait de l'évolution rapide de nos appareils. Le terme est Location pour la géolocalisation.
Dans la documentation, j'ai trouvé la classe LocationService qui semble faire le job très simplement.
Elle te donne accès aux LocationData qui te permettront de définir les coordonnées des marqueurs et d'avoir celle de l'utilisateur. Il te faudra définir l'algorithme de proximité (ça peut rester très simple), par contre, je ne vois pas l'orientation.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

DavidArles
Messages : 33
Inscription : 11 Fév 2023 21:29

Re: Un sujet AR

Message par DavidArles » 20 Fév 2023 18:16

Ok merci
Avant de recevoir ta réponse, j'ai rédigé ceci pour une meilleure compréhension de mon projet :

Bonsoir à tous,

Merci à vous pour vos réponses passées ;

Ayant un peu défriché le sujet, voici mon idée expliquée de manière plus développée :

Exemple de base :
Un visiteur entre dans le théâtre antique et va donc activer l'application (que je nommerais par ex : RA-Arles Antique) via son smartphone. L'application va lui demander de choisir l'emplacement d'où il va faire son expérience de RA.
vueTH.png
vueTH.png (214.83 Kio) Consulté 5374 fois
A partir de cet emplacement, la caméra devra donc révéler les colonnes :
(à leur emplacement d'origine historique et en 3D).
smartphoneAR.png
smartphoneAR.png (329.56 Kio) Consulté 5374 fois
Ce sont donc bien des objets 3d que je compte faire apparaître (est ce cela les marqueurs?)

J'ai déjà réussi à faire apparaître 2 colonnes texturées dans mon bureau avec mon smartphone connecté à Unity...Petit pas peut être pour certains, mais quelle victoire pour moi !!;)

Maintenant, nouvelle étape (à mon sens) :Intégrer des colonnes et les faire apparaître donc au théâtre dans leur position d'origine...Est ce que donc la classe LocationService est la solution? si oui, je vous demande encore un indice ; comment l'utiliser? Sinon, vers quelle solution dois me rediriger?


Mes outils :
Unity 2022 et AR Fundation, C# (débutant...) MAIS partenariat possible avec un GRETA local qui dispense des cours 3D (Blender etc...) ainsi qu'un IUT à vocation similaire.

Ma démarche :

Je sais que le concept de valorisation patrimoniale via le numérique est déjà très développé, en on y trouve des exemples dans ma ville, notamment un musée qui a enrichi sont site Web avec une VR.

Néanmoins, passionné de mon patrimoine et technicien autodidacte, je vais peut être faire l'objet d'une invitation au sein d'un groupe de travail local dédié au numérique (volonté municipale de développer la branche). J 'ai découvert Unity en octobre dernier et j'ai donc développé dans ma tête cette idée. Voilà j'arrête de raconter ma vie, vous savez tout concernant ma démarche:)

Merci infiniment pour votre aide :)
David
Pièces jointes
vueTH.png
vueTH.png (214.83 Kio) Consulté 5374 fois

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Un sujet AR

Message par boubouk50 » 20 Fév 2023 19:38

A Arles, c'est ma boite qui a fait les navigateurs de réalité augmentée au musée Arlaten.

Concernant ton projet, ce ne sera pas aisé à mettre en place, la première raison étant le fait que ce soit en extérieur. Les conditions de luminosité sont imprévisibles et rend le travail sur le flux vidéo très instable et contraint.

La réalité augmenté, pour la spatialisation, a besoin de repères dans le monde réel pour y superposer des informations virtuelles. Dans ton cas, tes modèles 3D.
En règle générale, et pour ton cas, c'est le flux vidéo du smartphone qui sert de données pour définir ces repères. Or, les conditions climatiques et d'heure vont influer sur le film -> Soleil rasant ou zénithal, contre-jour, nuageux, brumeux, etc.
Faire de la reconnaissance d'images sur ce flux devient vite casse-gueule parce que l'algorithme va chercher dedans une image prédéfinie dans des conditions extérieures précises que tu ne retrouveras jamais (ou peu).
C'est pourquoi, ce genre de détection est couplée à un marqueur (une image de taille et de position prédéfinie) qui lui, n'est pas dépendant des conditions extérieures, tel qu'un QRCode par exemple. Mais cela implique de positionner et figer ce marqueur dans l'espace public, ce qui n'est pas autoriser. (Sauf démarche de la ville)

Ensuite, faire de la RA en fixant le spectateur à un point donné, renvoie une expérience faible. Autant mettre un plexiglass avec les colonnes imprimées et laisser le spectateur se placer à cet endroit. Ou encore, afficher les colonnes 3D figées sur l'écran et laisser le spectateur les superposer lui-même au réel. Ce sera moins contraignant pour lui. Il faudrait pouvoir visualiser les colonnes depuis n'importe où (ou du moins un grand espace). C'est possible avec la géolocalisation mais la précision est faible et donc l'expérience pas folle.

A leur actuelle, je dirai que la meilleure solution serait de trouver quelque chose de déjà présent qui fasse office de marqueur comme un panneau d'information par ex (tu peux même définir plusieurs marqueurs) et ensuite passer sur une navigation libre. (Ground Plane avec ARKit et ARCore normalement pris en compte dans ARFoundation)

Marqueur : image prédéfinie de taille fixe qui sera détecter par l'application. Il sert de point de repère dans le monde réel avec sa taille et son orientation.
LocationService : Service de géolocalisation d'Unity. Te renvoie les coordonnées GPS du téléphone. Une donnée à traiter ensuite.

C'est un sujet que j'ai exploré il y a plusieurs années et qui me paraît encore casse-gueule, encore plus pour une personne inexpérimentée mais la technologie permet tout de même de faire quelque chose de correct. Faut juste pas s'attendre à un miracle.

On en discute quand tu veux.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

DavidArles
Messages : 33
Inscription : 11 Fév 2023 21:29

Re: Un sujet AR

Message par DavidArles » 21 Fév 2023 19:01

A Arles, c'est ma boite qui a fait les navigateurs de réalité augmentée au musée Arlaten.
Ah ok!!Donc tu connais bien ma ville ;) déjà ta 1ere phrase me pose question car pour moi navigateur =web...
Concernant ton projet, ce ne sera pas aisé à mettre en place, la première raison étant le fait que ce soit en extérieur. Les conditions de luminosité sont imprévisibles et rend le travail sur le flux vidéo très instable et contraint.
Ok, on va considérer que le soleil y est présent en saison touristique, quand les visiteurs vont venir..;)
La réalité augmenté, pour la spatialisation, a besoin de repères dans le monde réel pour y superposer des informations virtuelles. Dans ton cas, tes modèles 3D.
En règle générale, et pour ton cas, c'est le flux vidéo du smartphone qui sert de données pour définir ces repères. Or, les conditions climatiques et d'heure vont influer sur le film -> Soleil rasant ou zénithal, contre-jour, nuageux, brumeux, etc.
Faire de la reconnaissance d'images sur ce flux devient vite casse-gueule parce que l'algorithme va chercher dedans une image prédéfinie dans des conditions extérieures précises que tu ne retrouveras jamais (ou peu).
C'est pourquoi, ce genre de détection est couplée à un marqueur (une image de taille et de position prédéfinie) qui lui, n'est pas dépendant des conditions extérieures, tel qu'un QRCode par exemple. Mais cela implique de positionner et figer ce marqueur dans l'espace public, ce qui n'est pas autoriser. (Sauf démarche de la ville)
Grâce à tes explications je commence à comprendre et je pense que le QRCode va m'être d'une bonne utilité, ce sera un argument quand je rencontrerai les élus qui donc auront cette démarche pour la ville
Ensuite, faire de la RA en fixant le spectateur à un point donné, renvoie une expérience faible. Autant mettre un plexiglass avec les colonnes imprimées et laisser le spectateur se placer à cet endroit. Ou encore, afficher les colonnes 3D figées sur l'écran et laisser le spectateur les superposer lui-même au réel. Ce sera moins contraignant pour lui. Il faudrait pouvoir visualiser les colonnes depuis n'importe où (ou du moins un grand espace). C'est possible avec la géolocalisation mais la précision est faible et donc l'expérience pas folle.
ok j'oublie
A leur actuelle, je dirai que la meilleure solution serait de trouver quelque chose de déjà présent qui fasse office de marqueur comme un panneau d'information par ex (tu peux même définir plusieurs marqueurs) et ensuite passer sur une navigation libre. (Ground Plane avec ARKit et ARCore normalement pris en compte dans ARFoundation)
Je pense proposer des QRCode où des scans via ARLOOPA de support de colonnes...En revanche, il me semble que Ground Plane ne soit pas dans ARFoundation mais plutôt PlaneDetection

C'est un sujet que j'ai exploré il y a plusieurs années et qui me paraît encore casse-gueule, encore plus pour une personne inexpérimentée mais la technologie permet tout de même de faire quelque chose de correct. Faut juste pas s'attendre à un miracle.
Comme tu dis, j'ai découvert Unity y a 5 mois....
On en discute quand tu veux.
Je t'en remercie infiminent::
J'en profite pour te demander s'il existe une VRAI formation sur Unity sur tout les points que nous avons échangés (payants je pense, aucun soucis). Au delà de tout ceci, j'ai donc rdv le 28 février prochain en Mairie d'Arles pour exposer mon projet. Si tu peux suivre nos échanges et mes interrogations là dessus jusqu'à cette date butoir, ce serait un immense plaisir.

David

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Un sujet AR

Message par boubouk50 » 21 Fév 2023 19:21

DavidArles a écrit :
21 Fév 2023 19:01
Ah ok!!Donc tu connais bien ma ville ;) déjà ta 1ere phrase me pose question car pour moi navigateur =web...
A Arlaten, les navigateurs de RA sont des dispositifs physiques de RA. Un écran sur pivot avec une caméra derrière. Rien à voir avec le web. C'est simplement le nom que le musée leur a donné. Nous on appelle ça une borne Ray-On.
Ok, on va considérer que le soleil y est présent en saison touristique, quand les visiteurs vont venir..;)
Déjà, tu esquives une contrainte qui sera présente. Et le beau temps ne change rien à la position du soleil dans le ciel. Donc même par beau temps, tu vas avoir une contrainte. Mais je lis que tu passerais par des QRCodes (target image donc), donc ça ne pose plus de réel problème, si ce n'est gérer l'éclairage des colonnes 3D en fonction de l'heure (et ça c'est une chouette option).
Grâce à tes explications je commence à comprendre et je pense que le QRCode va m'être d'une bonne utilité, ce sera un argument quand je rencontrerai les élus qui donc auront cette démarche pour la ville
QrCode ou tout autre image. Si un encart touristique est posé, il est possible de l'utiliser comme marker (AKA image target) sans ajouter de QRCode. Tu comprendras quand tu commenceras tes premiers essais ;)
Je pense proposer des QRCode où des scans via ARLOOPA de support de colonnes...En revanche, il me semble que Ground Plane ne soit pas dans ARFoundation mais plutôt PlaneDetection
Les noms changent mais le principe reste le même
J'en profite pour te demander s'il existe une VRAI formation sur Unity sur tout les points que nous avons échangés (payants je pense, aucun soucis). Au delà de tout ceci, j'ai donc rdv le 28 février prochain en Mairie d'Arles pour exposer mon projet. Si tu peux suivre nos échanges et mes interrogations là dessus jusqu'à cette date butoir, ce serait un immense plaisir.
Oulà, le 28 c'est demain!! Pour les formations, je ne peux pas trop t'aider, j'utilise Unity depuis plus de 10 ans, je ne connais plus les bonnes adresses. Ca doit se trouver sur le net.
Pour ce qui est du côté technique, je suis régulièrement sur ce forum ;-)

Tu peux aussi rejoindre les discords Unity 3D Francophone et Dev JV France pour avoir des échanges avec d'autres utilisateurs d'Unity.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Répondre

Revenir vers « Unity et la VR »