2010-03-12 4 views
5

Je cherche des papiers/algorithmes pour fusionner des textures projetées sur la géométrie. Pour être plus précis, étant donné un ensemble de caméras/photographies et de géométrie entièrement calibrées, comment pouvons-nous définir une métrique pour choisir quelle photographie doit être utilisée pour texturer un patch donné de la géométrie.Fusion de textures de photos - (à partir de caméras calibrées) - projetées sur la géométrie

Je peux penser à quelques attributs que l'on peut chercher à minimiser, y compris l'angle entre la surface normale et la caméra, la distance de la caméra par rapport à la surface, tout en minimisant le paramétrage de la netteté. La question est de savoir comment ces choses se combinent et y a-t-il des solutions existantes bien établies?

+0

Je pense que stackoverflow n'est pas le meilleur endroit pour poser cette question de recherche. J'essaierais de chercher dans un journal ou une base de données de conférence avec ces mots-clés. Votre université vous donnera accès à un. Un document d'enquête sur la reconstruction 3D avec des textures devrait vous donner des idées sur ce qui a été essayé et sur la façon de procéder. – abc

+2

:) Malheureusement, je ne suis pas un étudiant universitaire. J'ai fait beaucoup de recherches, mais parfois les humains peuvent vous indiquer la bonne direction où des piles d'informations ne peuvent pas, c'est juste un autre endroit pour chercher des pistes possibles. Cela dit, je me rends compte que cela peut être du mauvais côté de la «poser des questions qui peuvent être définitivement répondu», règle de débordement de la pile. – freakTheMighty

+0

Vous pouvez vérifier la bibliothèque OpenCV, qui fournit certaines fonctions susceptibles de vous aider. –

Répondre

1

Je suis certain qu'il existe des approches théoriques qui pourraient éventuellement donner des résultats. Mais je voudrais recommander une méthode plus directe:

Si vous avez un GPU disponible, et avez une expérience de shader DirectX ou OpenGL (ou expérience de programmation GPU), il serait relativement simple de "splat" chaque texture sur le modèle et vérifiez le résultat. Utilisez d'abord vos yeux, et construisez une mesure simple qui peut faire un jugement rapide qui corrèle assez bien à vos yeux. (Par exemple, puisque la netteté est susceptible d'être une caractéristique désirée d'une bonne texture, prenez une FFT 2D de la sortie et la partie mappée de l'entrée: Le mappage avec le contenu de fréquence le plus élevé et le moins de perte peut être votre meilleure sélection. Parfois, le moyen le plus simple («Essayez-les tous et testez», AKA «brute-force») peut être le meilleur, surtout si vous avez une puissance GPU disponible. C'est-à-dire, n'essayez pas de développer un prédicteur théorique du succès (qui peut être une douleur royale à développer et déboguer), mais plutôt de générer tous les résultats possibles et de les comparer pour voir lequel est le meilleur. Après tout, même si vous développez une méthode a priori basée sur des prédictions, vous devrez tout de même appliquer la projection et vérifier le résultat pour vous assurer que cela fonctionne. Et puisque vous avez besoin de coder ce test de toute façon, pourquoi coder autre chose?

Questions connexes