Wie erstelle ich ein 3D-Modell aus einem Objekt auf einem Foto?

10

Das ist mein Sofa: Geben Sie hier die Bildbeschreibung ein

Ich möchte ein 3D-Modell erstellen, um verschiedene Muster in der Nachbearbeitung anzuwenden. Siehe Wie kann ich ein neues Muster um ein 3D-Objekt in einem Foto wickeln?

Der blaue Bereich zeigt an, wo ich ein 3D-Modell erstellen möchte. Ich möchte daraus eine UV-Karte erstellen und eine Textur darauf anwenden.

Dazu muss ich zunächst ein 3D-Modell aus diesem Bereich erstellen. Habe ich recht ? Wenn ja, wie kann ich daraus ein 3D-Modell erstellen?

Wenn ich falsch liege, schlagen Sie in meiner früheren Frage alternative Ansätze vor.

user3528346
quelle
Da dies von der spanischen Marke Fama stammt, warum verwenden Sie nicht das Fabric Simulator-Tool? Seltsamerweise sieht ihre Studio-Version eines Wohnzimmers genauso aus wie Ihr Wohnzimmer mit Ihrem Sofa. fama.es/virtual-simulator.html Oder vielleicht wollten Sie nicht sagen, dass dies Ihr Sofa ist. In einem separaten Hinweis habe ich einen Job auf einer freiberuflichen Website gesehen, bei dem jemand gebeten wurde, diese Art von Arbeit zu erledigen. Hängt das mit Ihrer Anfrage zusammen?
B Shaw
Teilen Sie einfach großartige Angebote von 40 kostenlosen 3D-Rendering-Tools, die sich perfekt für Anfänger und diejenigen eignen, die ein knappes Budget für ihre Hubbys haben. realspace3d.com/free-3d-tools
Stefan
3
Ich stimme dafür, diese Frage als nicht zum Thema gehörend zu schließen, da es sich um Grafikdesign handelt und zu Grafikdesign gehört .
Scottbb

Antworten:

24

Sie können hierfür den Fluchtpunktfilter von Photoshop verwenden .

Es ist am einfachsten, eine 3D-fähige Version von Photoshop zu verwenden, ¹ die Sie vermutlich haben, da Sie keine andere 3D-Software erwähnt haben. Es gibt einen alternativen Pfad für Benutzer einer Version von Photoshop, dem die 3D-Funktionen fehlen, auf die ich weiter unten näher eingehen werde.

Diese Technik funktioniert am besten mit einem geradlinigen Foto, dh einem ohne Verzerrung . Durch Verzerrungen kann Photoshop keine 3D-Geometrie erstellen, die genau an den Features im Foto ausgerichtet ist. Sie können die von Photoshop erstellte Geometrie manuell bearbeiten, um ein ungenaues Modell zu erstellen, das Ihrem ungenauen Foto entspricht. Dies ist jedoch ein vermeidbarer Aufwand.

Der beste Weg, um ein geradliniges Foto zu erhalten, ist die Verwendung eines Objektivs mit geringer Verzerrung, um das Bild aufzunehmen. Die DxO-Objektivdatenbank kann Ihnen bei der Auswahl helfen. Darüber hinaus sollten Sie ein Objektiv verwenden, das von der Objektivkorrekturfunktion von Lightroom oder ACR unterstützt wird , und diese automatische Korrektur für Ihr Foto verwenden, bevor Sie versuchen, daraus ein 3D-Modell zu erstellen.

So gehen Sie vor:

  1. Öffnen Sie Ihr Foto in Photoshop und sagen Sie dann Filter → Fluchtpunkt. Zeichnen Sie mit dem Werkzeug Ebene erstellen einen Rahmen um die Sitzfläche der beiden vollständig sichtbaren Kissen.

    Sie müssen ziemlich genau sein, wie Sie diese Ebene einrichten, da sich alle Fehler hier auf den Rest des 3D-Modells ausbreiten. Photoshop hilft Ihnen dabei: Das Raster in der Ebene ändert seine Farbe, um anzuzeigen, wie plausibel die Ebene ist. Sie möchten ein blaues Gitter sehen, nicht gelb oder rot. Ein blaues Raster garantiert nicht , dass es für die Szene richtig ist, aber nur , dass es sein könnte , richtig.

  2. Während Sie Befehl (Mac) oder Strg (Windows) gedrückt halten, ziehen Sie vom Größenänderungsfeld an der Vorderkante dieser Ebene nach unten, um eine neue vertikale Ebene über die Vorderkante dieser entfernten Kissen zu legen.

    Wiederholen Sie nun die Cmd / Ctrl-Drag-Bewegung noch vier Mal, um die Ebenen zu erstellen, die das der Kamera am nächsten gelegene Kissen bedecken: zuerst eine vertikale, um die verborgene Vorderseite des Kissens abzudecken, dann eine horizontale, die den Sitzbereich abdeckt, dann zwei weitere vertikale diejenigen, die die der Kamera zugewandten Seiten abdecken.

    Ziehen Sie zum Schluss die erste Ebene heraus, um die Sitzfläche des inneren Eckkissens abzudecken.

    Passen Sie die Größe dieser Ebenen an, um die gesamte sichtbare Oberfläche abzudecken, obwohl hierfür einige Bereiche des Fotos abgedeckt werden müssen, die nicht Teil der Kissen sind: ²

    nummerierte Flugzeuge

    Wir werden die Flugzeugabdeckung später anpassen.

    Wenn Sie feststellen, dass die neuen Ebenen mit zunehmender Entfernung von der ersten Ebene immer schlechter an den Sofaoberflächen ausgerichtet sind, liegt die wahrscheinlichste Ursache darin, dass Sie die erste Ebene nicht genau auf die Sitzfläche des Kissens ausgerichtet haben. Wenn Sie aus dieser falsch ausgerichteten Ebene herausragen, vergrößern Sie diesen Fehler. Die beste Lösung hierfür ist, alle bis auf die erste Ebene zu löschen und dann die Ecken ein wenig zu optimieren, damit sie besser zur Szene passen. Wenn Sie diese anderen 5 Ebenen erneut erweitern, sollten sie jetzt genauer mit der Szene übereinstimmen.

    Eine weitere wahrscheinliche Ursache ist, dass Sie den obigen Rat ignoriert haben, um mit einem geradlinigen Foto zu beginnen.

  3. Teilen Sie dem Fluchtpunktfilter mit, dass eine 3D-Ebene an Photoshop zurückgegeben werden soll:

    Fluchtpunkteinstellung

    Wenn Ihrer Version von Photoshop diese Funktion fehlt, bleiben Sie vorerst im Fluchtpunktfilter. Wir werden den nächsten Schritt etwas anders machen, um diesen Mangel an direkter 3D-Unterstützung zu umgehen.

    Andernfalls sagen Sie OK, und Sie erhalten eine neue 3D-Ebene mit einem primitiven Modell der von Ihnen skizzierten Sofaoberflächen.

    Das beantwortet so ziemlich Ihre ursprüngliche Frage. Ja, es sind nur 6 Oberflächen in 3D, nicht gerade ein detailliertes Modell, aber wie Sie sehen werden, reicht es für einige Zwecke aus.

    Was wir als nächstes tun werden, ähnelt dem Camera Mapping , einer Technik, die in VFX häufig verwendet wird , um schnelle 3D-Effekte in einer 2D-Szene zu erzielen, ohne vollständig in 3D zu arbeiten. Anstatt ein Foto auf eine grobe 3D-Geometrie zu projizieren, verwenden wir unsere grobe 3D-Geometrie, um die Projektion von Texturen zurück auf das Foto zu unterstützen.

  4. Wenn Sie die 3D-Ebene im Dialogfeld "Fluchtpunktfilter" an Photoshop zurückgeben, werden Sie möglicherweise gefragt, ob Sie zum 3D-Arbeitsbereich springen möchten. ³ Nehmen Sie das Angebot an.

    Wenn Sie nach den Maßeinheiten für die neue Ebene gefragt werden, können Sie genaue Werte eingeben, wenn Sie zufrieden sind. Dies hat jedoch keine Auswirkungen auf die Ergebnisse, soweit diese Antwort lautet. Dies ist nur wichtig, wenn Sie die 3D-Ebene in ein anderes Programm exportieren und die neue Geometrie benötigen, um den Maßstab einer größeren Szene anzupassen.

    Sie sehen nun Ihr primitives 3D-Modell über dem Basisfoto. Photoshop wird versuchen, Texturen aus dem Basisfoto für dieses Modell zu extrahieren, aber machen Sie sich darüber keine Sorgen. Wir werden die Malwerkzeuge von Photoshop verwenden, um diese 3D-Oberflächen stattdessen mit der gewünschten Textur zu füllen

    Hier habe ich den Musterpinsel mit einem knalligen Muster verwendet, damit der Effekt leicht zu erkennen ist. Füllen Sie zunächst alle Oberflächen mit Ihrer Textur:

    Schritt 1, Oberflächen gefüllt

    Beachten Sie, dass sich das Muster in der richtigen Perspektive befindet und in die Ferne schrumpft. Dies geschieht, weil wir auf eine 3D-Oberfläche malen, die der groben Geometrie unserer 2D-Szene entspricht.

    Wenn Sie eine Version verwenden, der diese Fähigkeit zum Erstellen eines 3D-Objekts aus Fluchtpunkt-Ebenen fehlt, können Sie das Stempel-Werkzeug im Dialogfeld Fluchtpunkt-Ebenen verwenden, um flache Texturen auf die Ebenen zu kopieren. Dies hat den gleichen Effekt wie das Malen auf ein 3D-Modell, bei dem Ihre Textur in der richtigen Perspektive auf die Szene angewendet wird.

  5. Fügen Sie der 3D-Ebene eine schwarze Ebenenmaske hinzu, indem Sie bei gedrückter Wahltaste / Alt-Taste auf das Maskensymbol der Ebene klicken und dann die Bereiche, in denen das Muster angezeigt werden soll, weiß übermalen:

    Schritt 2, Oberflächen maskiert

    Wie Sie sehen, habe ich hier sehr harte Arbeit geleistet. Ich habe die Maske absichtlich etwas größer gemacht als nötig, mit einem großen, scharfkantigen Pinsel und großen, schlampigen Strichen. Wenn dies länger als 30 Sekunden dauert, verschwenden Sie Zeit. Wir werden die Maske im nächsten Schritt mit einigen Detailarbeiten zurückwürgen.

  6. Verringern Sie die Deckkraft der Ebene auf etwa 50%, damit Sie das darunter liegende Foto gut genug sehen können, um die Kissenkanten zu sehen, und verfeinern Sie dann die Kanten Ihrer Maske sorgfältig, um nur die Teile des 3D-Modells abzudecken, für die Sie das Muster anzeigen möchten.

    Profi-Tipp: Ein einziger Klick mit einem Photoshop-Pinsel, gefolgt von einem Umschalt-Klick an einer anderen Stelle, ergibt einen schönen geraden Strich, den Sie nicht einfach von Hand duplizieren können. Hier können Sie mit einem scharfkantigen Pinsel auf die Ebenenmaske in der Nähe einer Ecke eines Kissens klicken, sodass der Pinsel die Kante des Kissens kaum berührt. Klicken Sie dann bei gedrückter Umschalttaste den gleichen Abstand von der anderen Ecke entlang dieser Kante des Kissens . Auf diese Weise können Sie die Auslenkungen der Maske über die geraden Kanten hinaus schnell und genau abschneiden.

  7. Erhöhen Sie die Deckkraft der 3D-Ebene auf 90-100% und schalten Sie den Mischmodus auf einen geeigneten Wert. Für diese Textur- und Hintergrundfotokombination funktioniert Linear Burn gut: ⁵

    Schritt 3, vollständig mischen

    Voilà, elektronische Polsterung!

Diese Technik ist nicht perfekt. Das Modell besteht nur aus wenigen Ebenen, sodass sich darauf gemalte Texturen nicht präzise um die Kurven des Sofas biegen. Wie Sie im obigen Bild sehen können, ist diese Einschränkung für einige praktische Zwecke möglicherweise nicht von Bedeutung. Die Schatten des Fotos verschmelzen mit der Textur, um die Illusion zu erzeugen, dass sich die Textur eng an die Sofaoberfläche anschließt, obwohl dies wirklich nicht der Fall ist.

Eine schnelle Möglichkeit, dies zu beheben, besteht darin, die Textur mithilfe der Filter "Verflüssigen" und "Verziehen" ein wenig zu biegen, um den Konturen zu folgen.

Wenn Sie wirklich ein genaues Modell oder eine 2D-UV-Kartendatei benötigen, um automatisierte Texturersetzungen durchführen zu können, haben Sie mehrere Möglichkeiten:

  • Führen Sie die obigen Schritte 1 und 2 aus. Anstatt die Option "3D-Ebene an Photoshop zurückgeben" im Flyout-Menü auszuwählen, weisen Sie Photoshop an, in 3DS zu exportieren ...

    Dadurch erhalten Sie eine 3ds Max- Datei, die auch von vielen anderen 3D-Anwendungen geöffnet werden kann. Dieses Format wird häufig genug verwendet, um normalerweise Importe mit guter Wiedergabetreue in andere Programme als 3ds Max zu erhalten, insbesondere für Geometrien, die so einfach sind wie die, die wir hier erstellt haben.

  • In Photoshop CS4 Extended oder höher können Sie mit Schritt 3 fortfahren, um die 3D-Ebene aus dem Dialogfeld Fluchtpunktfilter an Photoshop zurückzugeben, und dann 3D → 3D-Ebene exportieren ...

    Seltsamerweise ist das 3ds Max-Format hier nicht Ihre Wahl. Von denen, die Photoshop Ihnen bietet, empfehle ich Wavefront OBJ. Es ist ungefähr so ​​weit kompatibel wie *.3ds. Viele 3D-Programme öffnen beide, während andere nur das eine oder andere öffnen.

    COLLADA ist ein offener Standard, daher sollte es theoretisch die beste Option sein, aber ich finde, dass Importeure die Geometrie häufig beschädigen. ⁶ Vielleicht möchten Sie es trotzdem versuchen, wenn die Optionen *.3dsund *.objfür Sie nicht funktionieren.

    Photoshop kann auch nach STL und DXF exportieren, die weitgehend unterstützt werden, aber für diese Art von Arbeit ungeeignet sind. Es handelt sich um reale CAD-Formate, nicht um kreative Bildformate. Sie könnten sie bei der Herstellung von tatsächlichen Sofas verwenden.

    Alle anderen Optionen sind "Standards" im XKCD-Sinne . Vermeide sie.

Jetzt müssen Sie "nur" diese Modelldatei in einem echten 3D-Modellierer öffnen und verfeinern. Mit einem 3D-Paket mit vollem Funktionsumfang können Sie bei Bedarf auch direkt mit der UV-Karte arbeiten.

Dies bringt uns jedoch weit über den Rahmen dieser Website hinaus. Selbst wenn 3D-Modellierung hier zum Thema wäre, müsste ich im Grunde die Frage beantworten: "Wie macht man 3D-Modellierung?" Dieses Thema braucht ganze Bücher, um es zu erklären. Sie benötigen monatelange Übung, um Kompetenz zu erwerben, und etwa 10.000 Stunden gezielte Übung zum Aufbau von Fähigkeiten , um ein gewisses Maß an Fachwissen zu erreichen. Diese Fähigkeit ist selten genug, schwierig genug und wertvoll genug, um davon zu leben.

Sobald Sie ein detailliertes 3D-Modell haben, können Sie es bei Bedarf wieder in Photoshop einfügen. Photoshop ist ein ziemlich gutes 3D-Textur-Malwerkzeug. Es gibt auch spezielle Tools wie MARI , 3D-Coat und BodyPaint 3D . High-End-3D-Pakete enthalten häufig Funktionen zum Malen von Texturen, die in ihrem spezielleren Bereich mit Photoshop konkurrieren oder diese übertreffen: CINEMA 4D , Modo , Blender usw.

Wenn Sie die vollständige Creative Cloud abonniert haben, verfügen Sie bereits über CINEMA 4D Lite , eine abgespeckte, aber recht funktionale Version von C4D, die jetzt BodyPaint enthält, eine Funktion, die früher nur in Nicht-Lite-Versionen verfügbar war. Sie können sich BodyPaint als reine 3D-Alternative zu Photoshop vorstellen, mit der Sie direkt auf Modelle malen können, wie wir es oben getan haben. Die hauptsächliche praktische Einschränkung besteht darin, dass Sie es über After Effects verwenden müssen. Dies ist umständlich, wenn Sie AE nicht bereits für Ihr Projekt verwendet haben. Auf der positiven Seite können Sie AE direkt über den Fluchtpunktfilter erreichen:

AE Export vom Fluchtpunkt


Fußnoten:

  1. Dies bedeutet CS3 Extended über CS6 Extended oder eine der Creative Cloud-Versionen. Ich habe diese Technik in CS3 Extended und in CC 2014.2 getestet.

  2. Sie sehen eher blaue Gitter als einfarbige nummerierte Ebenen. Ich habe die Flugzeuge gefärbt und nummeriert, um das Beispiel klarer zu machen.

    Wenn Sie nach der gelben dritten Ebene suchen, zeigt diese von der Kamera weg. Wir mussten es nur konstruieren, um um die Ecke der L-Form des Sofas zu kommen.

  3. Alle 3D-fähigen Versionen von Photoshop verfügen über die Funktion "Arbeitsbereiche", frühere Versionen haben diese automatische Umschaltung des Arbeitsbereichsmodus jedoch nicht durchgeführt. Der 3D-Arbeitsbereich wurde erst in CS4 zu Photoshop hinzugefügt. Außerdem können Versionen, die Ihnen den Wechsel in den 3D-Arbeitsbereich anbieten, angewiesen werden, sich an die Auswahl zu erinnern, sodass der Arbeitsbereich möglicherweise nur ohne Aufforderung gewechselt wird.

  4. Genau genommen erhalten Sie nicht die UV-Karte, nach der Sie gefragt haben, aber in den meisten Fällen möchten Sie wirklich direkt modellieren. Wenn Sie wirklich eine separate UV-Kartendatei benötigen, müssen Sie das 3D-Modell von Photoshop wie oben beschrieben in eine andere Anwendung exportieren.

    Das Malen von Texturen funktioniert in Photoshop CS3 Extended anders. CS4 hat die Möglichkeit hinzugefügt, direkt auf das Modell zu malen, während Sie in CS3 jede Textur separat öffnen und bearbeiten müssen. Bei dieser Technik spielt der Unterschied keine Rolle.

  5. Der Multiplikations-Mischmodus kann auch für diese Art von Kombination gut funktionieren. Andere Texturen und Basisfotos erfordern möglicherweise einen anderen Mischmodus.

  6. Dies liegt wahrscheinlich daran, dass COLLADA nicht von einem der größten Hersteller von 3D-Software unterstützt wird und daher nicht über die Marktmacht verfügt, um zu definieren, was der Standard in der realen Welt bedeutet. Es ist ein offener Standard, daher hat jedes Unternehmen, das ihn implementiert, seine eigene inkompatible Sichtweise.

Warren Young
quelle
2
Dies ist eine großartige Antwort - sehr gut dokumentiert. Dies wäre eine großartige Standardreferenz für diese Art von Fragen.
B Shaw
3

Wenn Sie viel von dieser Art von Arbeit machen, würde ich ernsthaft empfehlen, die Zeit zu investieren , um Blender 3D zu lernen - es kostet Sie nicht mehr als Zeit und den Schweiß auf Ihrer Stirn, da es völlig kostenlos ist (sowohl ohne Kosten als auch Open Source). , zu bekommen und für jeden Zweck zu verwenden . Es ist plattformübergreifend, benötigt aber offensichtlich eine angemessene Menge an Speicher- und Verarbeitungsleistung ( nicht so viel, wie Sie vielleicht erwarten ).

Mit Blender können Sie ein 3D-Modell erstellen, Texturen hinzufügen und dann Renderings in voller Auflösung aus jedem Winkel und mit jeder Beleuchtung erstellen - Sie können sogar ein Video von einem Spaziergang / einer Fliege durch die Szene erstellen - tatsächlich wurden damit Filme in voller Länge erstellt .

Es gibt viele Online-Tutorials, dieses ist einen Blick wert , eine Beta-Stack-Exchange- Site, sowohl kostenlos als auch kostenpflichtig für Bücher usw.

Hier sind einige Beispiele (alle vollständig in Blender hergestellt), die ich schnell hinzufügen möchte und die nicht von mir hergestellt wurden: Sofa Wohnzimmer

Steve Barnes
quelle
+1 für das Prinzip der Sache, aber meine Technik dauerte ungefähr eine halbe Stunde, um das erste Mal durchzuwühlen, von Datei> Öffnen bis zu einem fertigen Produkt. Nachdem ich die Details herausgefunden habe, konnte ich die Arbeit in 5-10 Minuten replizieren. Mit meinen bescheidenen 3D-Chops würde ich ein oder zwei Tage brauchen, um ein Sofa zu modellieren, das dem auf dem Originalfoto ähnelt. Fügen Sie weitere Tage hinzu, um die gesamte Szene zu replizieren. Schöne GI-Renderings wie die, die Sie gepostet haben, dauern noch Tage. Dann müssen Sie mit einem Compositor herumfummeln, um die Pässe, die Sie gerendert haben, in alternativen Texturen zu ersetzen, ohne sie erneut zu rendern.
Warren Young
@SteveBarnes, danke für die Antwort. Wenn ich nur 3D-Modellierung von Sofas und Möbeln lernen möchte, können Sie mir einige Ressourcen nennen. Blender ist ein sehr großes Programm mit vielen Werkzeugen. Was soll ich lernen, um 3D-Modelle zu erstellen?
user3528346
1
@ user3528346 - Einer der Gründe, Blender trotz seiner Größe und steilen Lernkurve zu empfehlen, ist, dass es kostenlos ist und es online viel Hilfe gibt. Weitere Tools finden Sie unter hongkiat.com/blog/… und en.wikipedia.org/wiki/List_of_3D_modeling_software
Steve Barnes
@SteveBarnes Vielen Dank für die Antwort. Wenn ich 3D-Modellierung für Möbel und Sofas lernen möchte, können Sie mir Ressourcen, Bücher oder Video-Tutorials geben? Ich kann sie kaufen, kein Problem. Ich möchte nur lernen, 3D-Modell aus Sofas zu machen
user3528346
Die 3D-Modellierung der meisten Dinge ist ähnlich. Ein guter Ausgangspunkt für Blender ist cgcookie.com/blender/cgc-courses/…
Steve Barnes