Comment détecter un objet physique dans la réalité augmentée Android?
j'ai trouvé plusieurs façons de détecter différentes formes. Mais pas de chance quand je cherche un objet physique. De ce que j'ai lu nous devrions avoir une bordure noire autour des images pour faire un fichier de modèle. Si je suis ce concept et génère un motif, alors mon application détecte des images sur l'impression. Mais dans le monde réel un objet physique pas nécessairement à bordure noire, de forme carrée, autour d'elle.
mise à Jour
Bien que j'accepte une réponse, ma question reste irrésolu. Comme il n'y a toujours pas de solution pour détecter l'objet physique.
toute autre recherche et tout lien sont les bienvenus!
3 réponses
la mauvaise nouvelle est que vous ne pouvez pas utiliser AndAR pour détecter des objets physiques. AndAR est basé sur une approche de marqueur fiduciaire, où le marqueur est composé de deux composantes: une bordure solide et un motif intérieur. Le motif encode une valeur qui peut être utilisée pour s'adresser à un modèle particulier à rendre sur le marqueur, et le bord permet de déterminer facilement l'orientation relative du marqueur par rapport à l'appareil. Clairement, c'est juste planaire de reconnaissance d'images.
Pour faire de la reconnaissance d'objets 3D sur un objet est un problème plus compliqué, et je ne connais pas de bibliothèques Android qui fournissent une solution clé en main, mais reconnaître un seul objet est probablement faisable sur un appareil mobile.
une possibilité pourrait être d'étudier les kits D'outils disponibles pour Android AR (Layar, Junaio, Qualcomm AR SDK) qui prennent tous en charge une certaine reconnaissance d'image. Il se peut qu'en prenant des images de votre théière à diverses rotations et en utilisant ceux - ci comme les images que vous voulez votre application pour correspondre à ce que vous peut - être cette solution fonctionne, mais gardez à l'esprit qu'ils sont seulement conçus pour faire planar matching sur les images, Pas de vrais objets 3D, de sorte que la performance pourrait ne pas être grande. (Eh bien, le SDK Mobile SDK Pro de Metaio effectue la reconnaissance et le suivi 3D, mais c'est très cher).
tandis que la reconnaissance d'objet est peut-être mieux fait en comparant des cadres de caméra avec des images de l'objet que vous souhaitez reconnaître (ou en comparant des traits d'image des cadres de caméra avec des traits d'image pré-calculés etc), le suivi est une autre affaire. Si vous voulez suivre avec précision votre objet 3D dans L'espace 3D, vous aurez vraiment besoin d'avoir ou de construire un modèle 3D de celui-ci, et pour chaque cadre de déterminer les correspondances de point entre l'image de la caméra et L'objet 3D pour le suivi. Vrai sans aide (c.-à-d. sans caméra de profondeur) le suivi 3D est difficile.
j'espère que cela vous donnera de l'information que vous pourrez utiliser pour évaluer vos prochaines étapes.
mise à Jour: Le SDK Vuforia de Qualcomm vous permet de suivre les "cibles multiples", qui sont des objets ayant un ensemble de surfaces planes de poursuite ayant une relation spatiale fixe. Si vous avez fait un" cube " photos différentes des 6 côtés de votre objet (théière) qui pourrait fonctionner un peu. https://ar.qualcomm.at/qdevnet/developer_guide/Trackables
mise à jour fin 2013:
je n'ai aucune expérience avec ces derniers, mais:
Metaio propose désormais le suivi 3D des modèles CAO: https://dev.metaio.com/sdk/tutorials/3d-tracking-based-on-cad-data/
ARLab.com's LinkAR promesses de l'objet correspondant. http://www.arlab.com/objecttracking
je tiens à souligner que l'utilisation du mot "correspondance" - je pense que le cas d'utilisation ici est que vous savez de l'objet que vous voulez de superposition (un toy-box, et le moteur, etc). La différenciation entre plusieurs objets 3D peut être totalement hors de portée.
j'ai récemment lu que des recherches étaient en cours sur les vocabulaires de formes hiérarchiques utilisés pour la représentation d'objets. Bien sûr, il n'y a pas de bibliothèque disponible pour le téléchargement, mais dans le cas où vous êtes intéressé par l'approche générale ici vous pouvez trouver certains documents.
vous pourriez aussi être intéressé par papier. Il décrit un algorithme de détection d'objets basé sur un ensemble de contours.
avez-vous envisagé OpenCV pour la détection et au suivi de l'objet? Jetez un oeil à trouver des objets avec une Webcam tutoriel (C++ / Qt). OpenCV est disponible pour Android - OpenCV 4 Android.