Blender Dokumentation: Composite Nodes Matte
Diese Seite bezieht sich auf Blender v2.43 |
Compositing bedeutet das tricktechnische Zusammenfügen verschiedener Elemente in ein Bild.
Die Aufgabe besteht darin, aus mehreren Aufnahmen, die an unterschiedlichen Orten zu unterschiedlichen Zeiten mit unterschiedlichen Kameras aufgenommen wurden, ein Bild zu erstellen, welches der Zuschauer als Ganzes annimmt. Dabei werden die unterschiedlichen Aufnahmen aber nicht einfach überblendet, sondern einzelne Elemente aus dem bestehenden Bild mittels einer Maske freigestellt und damit vom Hintergrund gelöst. Wie man sich unschwer vorstellen kann, ist diese Aufgabe bei einem Film, der mit 24 Bildern pro Sekunde arbeitet nicht dadurch zu lösen, dass man jedes Bild einzeln bearbeitet, sondern es müssen weitgehend automatisierte Verfahren zum Einsatz kommen. In diesem Fall spricht man von Keying. Das Wort Key [Schlüssel] bezeichnet hierbei bestimmte Farb- oder Helligkeitseigenschaften, die für das Erstellen der abdeckenden Masken eingesetzt werden.
Ein kurzes Glossar für die wichtigsten Begriffe
Bearbeiten- Footage
- In der Film- und Videoproduktion bezeichnet Footage das ungeschnittene Filmmaterial.
- Garbage Matte
- Es handelt sich um eine Technik, bei der der Vordergrund von Hand maskiert wird.
- Keying
- Beim Keying werden gleichmäßige Farb- oder Helligkeitsbereiche definiert um eine Maske (Alphakanal) zu erstellen, welche wiederum besagte Bereiche transparent macht.
- Matte Painting
- Hintergründe bestehen aus einem von Hand oder digital gezeichneten Bild. Eine hervorragende Seite für diese Technik finden Sie unter http://www.jockelsplace.de/
- Spill
- Bei der Arbeit mit blauen oder grünen Hintergründen kann es passieren, dass Teile des freizustellenden Modells Farbanteile von Grün und Blau enthalten, insbesondere am Rand. Das führt dazu, dass das Modell unsauber freigestellt wird. Diesem Problem muss mit speziellen Techniken begegnet werden.
Keying ohne Verwendung der Matte Nodes
Bearbeiten
Blender stellt eine Reihe von Matte-Nodes zur Verfügung, die u.a. für die Arbeit mit Greenscreen bzw. Bluescreentechniken gemacht wurden. Dennoch möchten wir an dieser Stelle mit einem Nodesetup beginnen, das die hinter diesen Nodes liegenden Techniken "von Hand" nachbildet.
- Das Ausgangsbild für alle weiteren Arbeiten ist in Abb.2-1 dargestellt. Der grüne Hintergrund wurde bewusst durch eine Wolkentextur bearbeitet, um keine optimalen, sondern erschwerte Ausgangsbedingungen zu simulieren.
- Im nächsten Schritt [Abb.2-2] wird eine Maske erstellt, die den grünen Hintergrund vom Vordergrund trennt.
- Besondere Aufmerksamkeit wird in diesem Verfahren der Bearbeitung der Kanten gewidmet, um einen weichen Übergang zwischen Vorder- und Hintergrundbild zu erzielen [Abb.2-3]
- Das Ergebnis des Keying-Prozesses [Abb.2-4].
Um das Nodesetup für diesen Artikel übersichtlich zu halten, werden alle vier Schritte im Folgenden einzeln behandelt.
Erster Schritt: Das Freistellen des Kopfes
Bearbeiten- 1. Das Ausgangsbild [Add->Input->Image]
- 2. Das Ausgangsbild wird in seine drei Farbkanäle rot, grün und blau aufgespalten. [Add->Convertor->Seperate RGBA]
- 3. Der rote Kanal wird vom grünen subtrahiert, das heißt der grüne Kanal kommt in den oberen, der rote in den unteren Image-Eingang des Nodes. [Add->Color->Mix->Subtract] Wir erhalten einen deutlichen farblichen Kontrast zwischen Vorder- und Hintergrund, der aber noch nicht perfekt ist und im nächsten Schritt verbessert werden soll.
- 4. Um eine perfekte Maske zu erhalten, muss der Hintergrund entweder vollständig schwarz oder vollständig weiß sein. Wir fügen einen Mix Node ein [Add->Color->Mix->Add], stellen auf Add und erhöhen Fac solange, bis der Hintergrund weiß ist.
- 5. Leider wird dadurch die Figur im Vordergrund auch heller, was unerwünscht ist. Deswegen wird im nächsten Schritt der Farbumfang des Bildes so eingeschränkt, dass nur noch sehr wenige Farben verwendet werden und damit ein (fast) perfektes schwarz/weiß Bild ohne störende Graustufenübergänge erzielt wird. [Add->Convertor->ColorRamp]
- 6. Der grüne Ausgangskanal wird nun mit der eben erstellten Maske per MixNode multipliziert. [Add->Color->Mix->Multiply] Eine Multiplikation mit der Farbe schwarz führt unweigerlich dazu, dass der grüne Kanal zu "schwarz", nach dem "Verständnis einer Alphamaske" also "zu nichts" verrechnet wird und damit ist - zumindest farblich - der Vorder- vom Hintergrund getrennt. Die tatsächliche Auftrennung erfolgt nämlich erst im nächsten Schritt.
- 7. Die drei Kanäle rot, (überarbeiteter) grüner und blauer Kanal werden wieder zusammen gefügt [Add->Convertor->Combine RGBA]
Zweiter Schritt: Die Alphamaske anwenden
BearbeitenWir haben bisher nur alle Vorbereitungen getroffen, um den Kopf freizustellen. Die konkrete Umsetzung erfolgt jetzt. Dabei soll aber noch ein unschönes Detail verbessert werden. Wie Sie in Abb.6 sehen können, ist die Umrandung des Kopfes noch sehr scharfkantig und würde sich in einer späteren Überblendung mit dem neuen Hintergrundbild deutlich von diesem abheben.
- 3. Der Ausgang des ColorRamp-Nodes wird in den Eingang des Blur-Nodes gesetzt. [Add->Filter->Blur]. Dieser zeichnet das Bild weich, lässt die Ränder leicht verschwimmen und den weißen Bildanteil etwas größer werden.
- 4. Wie im letzten Schritt beschrieben vergrößert sich die weiße Maske etwas durch den Blur-Effekt und damit wäre unsere Maske etwas zu groß. Dem arbeiten wir durch den Dilate/Erode Node entgegen [Add->Filter->Dilate/Erode] und stellen den Distancewert auf -1, verkleinern die Maske also ein wenig.
- 5. Jetzt kommt der entscheidende Schritt, wo die Alphamaske tatsächlich angewendet wird. Dafür fügen Sie den "Set Alpha Node" ein [Add->Convertor->Set Alpha], setzen den Ausgang des Combine RGBA Node auf Image und die verkleinerte Maske als Alphawert.
- 6. Jetzt ist der Kopf vom Hintergrund freigestellt.
Als nächstes muss das freigestellte Vordergrundbild mit dem neuen Hintergrund gemischt werden. Entsprechend der oben angeführten Systematik erwartet man diesen Schritt erst an viel späterer Stelle, aber für die verfeinerte Bearbeitung der Übergänge an den Kanten ist es schon an dieser Stelle notwendig. In einem späteren, zweiten Durchgang wird dieses Compositbild noch einmal überblendet werden.
Die Ergebnisse aus dem Set Alpha Node [1] und dem Image Node [Add->Input->Image] werden wie in Abb.11 mit einem AlphaOver Node [Add->Color->AlphaOver] verrechnet.
Bei näherer Betrachtung der Details fällt allerdings auf, dass die Übergänge an den Kanten noch nicht so perfekt sind, wie wir uns das wünschen. Deswegen müssen nun im dritten Schritt die Vorbereitungen getroffen werden, dieses Problem zu lösen.
Dritter Schritt: Die Ränder überarbeiten
Bearbeiten
- Im ersten Schritt wird die schwarz/weiß Maske des ColorRamps wieder aufgenommen und mit dem Blur Node (1a Abb.14) [[Add->Filter->Blur]] leicht weichgezeichnet.
- Unser Ziel ist es, nur die Ränder im Kantenbereich weichzuzeichnen, den Rest des Bildes aber unverändert zu lassen. Deswegen muss nun eine Alphamaske erzeugt werden, die nur einen schmalen Streifen umfasst. Dies kann mit dem Filter Prewitt erreicht werden, der das Bild automatisch invertiert, aber eine Betonung auf die Kanten setzt [Add->Filter->Filter->Prewitt]. Die Einstellung Sobel erzielt einen ähnlichen Effekt.
- Diese Kante wird durch einen weiteren Blur Filter noch stärker weichgezeichnet [3]
- Abschließend wird dem Bild ein Alphakanal hinzugefügt und diese Maske gleichzeitig auf das bereits vorhandene Composit (Mann incl. Hintergrund) angewendet. Nur an den Stellen, wo die Maske weiß ist erhalten wir ein Bild und haben somit genau den Kantenbereich um das Objekt herum isoliert.
Vierter Schritt: Finale Arbeiten
Bearbeiten
Das Ergebnis aus dem vorherigen Arbeitsschritts steht uns im SetAlpha Node [Nr2] zur weiteren Bearbeitung zur Verfügung und wird ein weiteres Mal durch einen Blur Node weichgezeichnet [Nr.3]. Im allerletzten Schritt wird nun der weichgezeichnete Rand mit dem Gesamtbild mit dem AlphaOver Node überblendet.
Das Ergebnis und die Verbesserungen in der Kantenglättung können Sie im folgenden Bild sehen.
Das gesamte Nodesetup in einem Bild. Klicken Sie auf das Bild, um das Nodesetup in Originalgröße zu sehen.
Links
BearbeitenDie Inhalte dieses Artikels nehmen unmittelbaren Bezug zum Nodesetup, das auf dieser Seite vorgestellt wird.
Basisinformationen über Keying aus diesem Wikiartikel