Hey, j'essaie de prendre une image simple, quelque chose comme un fond noir avec des blocs de couleur représentant des murs. J'essaie de comprendre comment commencer sur quelque chose comme ça. Ai-je besoin d'analyser l'image et de regarder chaque pixel ou existe-t-il un moyen plus simple de le faire? J'utilise Java3D mais il ne semble pas y avoir de support intégré pour cela ...Essayer de convertir une image 2D en objets 3D en Java
Répondre
Active ce que je voulais vraiment était un cartographe de hauteur. J'ai mappé chaque pixel à une certaine hauteur en fonction de sa valeur RVB en échelle de gris. Si je voulais que la couleur soit indépendante de la hauteur, j'aurais deux images, une avec la carte de hauteur en échelle de gris et une autre avec une image en couleur de ce que je veux, dans ce cas, la pièce à ressembler. En ce qui concerne la reconnaissance des couleurs d'une image en tant qu'objet spécifique autre que par pixel, il faut absolument quelque chose de plus complexe. Un ami suggérait quelque chose comme l'algorithme du peintre pour quelque chose comme ça. Cependant, au moins pour moi, c'était la portée de ma demande.
Cela pourrait être plus compex que vous ne le pensez. Une solution pourrait inclure essentiellement les étapes suivantes:
- détection des bords à l'aide Java 2D ConvolveOp Filter
- vectorisation des bords dans un modèle 2D.
- extrusion 3D
Je vous suggère de commencer ici: http://scholar.google.com/scholar?q=Generic+Modeling+of+3D+Objects+from+Single+2D+Image –