GIMP-Forum 3.0

GIMP-Forum 3.0 (http://www.gimpforum.de/index.php)
-   Hilfe und Fragen (http://www.gimpforum.de/forumdisplay.php?f=12)
-   -   Strichzeichnung freistellen (http://www.gimpforum.de/showthread.php?t=24134)

KwaiC 25.05.2019 11:43

Strichzeichnung freistellen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo, bin neu im Forum. Ich versuche schon seit einiger Zeit gescannte Strichzeichnungen / Bilder in saubere SVG´s zu konvertieren.
Mit Alpha Kanal, Kanten glätten usw. bin ich bisher nur zu einem verpixelten Ergebnis gekommen.

Kann mir jemand eine praktische Anleitung geben um so ein einfaches Bild in ein sauber freigestelltes skalierbares Bild zu konvertieren.

ursa major 25.05.2019 15:36

Hi KwaiC!

Zunächst mal hängt es natürlich immer von der Qualität des Scans ab. Sehr oft sind da z.B. Schatten drauf, was man möglichst vermeiden sollte. Das ist allerdings bei Dir offenbar nicht der Fall. Wegen der Pixeligkeit würde ich empfehlen mit einer hohen relativen Auflösung zu scannen, sofern Deine Hardware-Kapazitäten das zulassen. Vielleicht so 600 bis 1200 Pixel per Inch. Wobei 600 wahrscheinlich schon reichen.

Zum Vektorisieren könnte ich Inkscape empfehlen (freies Vektorgrafik-Programm), das das automatisch erledigen kann. Da gibt es im Menü "Pfad" relativ weit oben die Funktion "Bitmap nachzeichnen". Im Filter-Dialog kannst Du auswählen nach welchem Kriterium der Filter vorgehen soll. Für ein 1-Bit, also Schwarz/Weiß-Bild wäre die Standardeinstellung "Helligkeitsschwellwert" zu empfehlen. Du kannst dann auch noch die Empfindlichkeit regulieren, wegen eventueller Schatten oder unscharfer Kanten. Das Resultat wird immer scharfkantig sein. Man kann es aber nachträglich ein wenig entschärfen wenn man will. Das allerdings nur global.

Nach Bestätigen des Filters wird über das Ursprungsbild die vektorisierte Grafik gelegt. Du solltest dann also das Bild darunter entfernen. Entweder indem Du die Vektorfassung beiseite schiebst und das Quellbild löschst oder indem Du mit gehaltener Alt-Taste zweimal auf die Grafik klickst, denn dann kannst Du auf die untere Grafik zugreifen und sie ebenfalls einfach löschen.

Im Menü "Pfad" gibt es auch weiter unten noch eine Funktion "Vereinfachen", die die Pfadpunkte reduziert, was man als "Glätten" bezeichnen könnte. Die sollte man aber nur mit Sorgfalt einsetzen, weil sie manchmal die Grafik ungewollt verzerrt. Korrigieren kann man aber händisch natürlich immer.

In GIMP wäre das Resultat immer ein Pixelbild, und das wäre nicht ohne Qualitätsverluste frei skalierbar und somit nicht das was Du suchst.

KwaiC 25.05.2019 19:57

Hallo und danke für die prompte Antwort. Inkscape habe ich auch schon getestet, komme jedoch auf kein akzeptables Ergebnis.

Zwischenzeitlich hatte ich eine brauchbare Lösung, kann es aber nicht mehr reproduzieren, da ich zuviel hin und her probiert habe.
Die Ränder aus dem Scan sind zu eckig.
Ich dachte, Kanten glätten wäre rechnerisch die gleiche Aufgabe für Gimp wie auch Inkscape

ursa major 25.05.2019 21:34

Du schriebst
Zitat:

Ich versuche schon seit einiger Zeit gescannte Strichzeichnungen / Bilder in saubere SVG´s zu konvertieren.
Dafür dürfte GIMP so oder so nicht das richtige Programm sein, weil Du damit gar keine SVG-Grafiken erstellen kannst. GIMP gibt immer Pixelbilder aus (JPEG, PNG, TIFF, BMP, GIF...). Du kannst zwar Vektoren (SVGs) importieren. Diese enthalten dann aber keine Bilddaten, sondern wirklich nur die Pfade. Also nichts Ausdruckbares. Und Du kannst aus GIMP auch Pfade exportieren, die aber auch keine Bilddaten enthalten. Die Pfade könntest Du dann z.B. in Inkscape laden und weiter bearbeiten. Bilddaten bestehen in GIMP und anderen Bildbearbeitungsprogrammen aus Pixeln. Und Pixelbilder kann man nicht ohne Qualitätsverluste skalieren.

Was Du mit GIMP machen könntest, da es sich ja um einen Scan, also ein Pixelbild, handelt, ist das Bild für die Vektorisierung vorzubereiten, zu optimieren. Z.B. indem Du die schon erwähnten Schatten weg retuschierst oder per Kontrastkorrektur entfernst. Das macht aber nur Sinn wenn es nötig ist. Eine automatische Funktion um die Kanten zu glätten gibt es da nur bei den Auswahl-Werkzeugen (in den Werkzeugeinstellungen ganz oben). Das wird Dir aber wahrscheinlich nicht ausreichen.

Ich denke, wenn Du wirklich ganz saubere Kanten haben willst, dann solltest Du Dein Bild von Hand in Inkscape nachvektorisieren. So komplex ist dieses Bild ja nicht. Das müsste innerhalb von ein paar Minuten zu machen sein. Da bräuchte es nur einen großen Kreis in der entsprechenden Konturenstärke (die stellst Du ebenso wie Füll- und Konturenfarbe im Dialog "Füllung und Kontur" ein > der Button mit der Pinselspitze in einer der Leisten am rechten Rand des Programmfensters, direkt über dem "T"). Die Kontur wandelst Du dann in Pfade um (Menü "Pfad" > "Kontur in Pfad umwandeln"). Dann zeichnest Du den Teil, der oben ausgeschnitten werden soll, wo die Haare hin sollen (also ein Trapez) mit dem Werkzeug "Beziérkurven und gerade Linien zeichnen" (ungefähr in der Mitte der Werkzeugleiste) und ziehst ihn vom Kreis ab (Kreis und Beschnitt-Teil auswählen und dann Menü "Pfad" > "Differenz"). Das sind fünf Klicks, der letzte Klick um den Pfad zu schließen). Dann zeichnest Du von Hand die Haare nach. Das sind pro Haar fünf Klicks - einen auf jede Ecke und noch einen auf die erste um den Pfad zu schließen. Dann ziehst Du einen kleinen Kreis für eines der Augen an der entsprechenden Stelle auf, kopierst ihn, fügst ihn ein und positionierst ihn auf dem anderen Auge. Und dann zeichnest Du halt noch den Mund. Das sind fünf bis sieben Klicks und ein bisschen Modellieren mit den Anfassern. Also z.B. so: Du klickst zunächst auf jede der Ecken und zum Schluss nochmal auf die erste um den Pfad zu schließen. Jetzt hast Du ein flaches gestrecktes Trapez. Nun wählst Du die oberen beiden Eckpunkte aus und klickst unterhalb de "Datei"-Menüs auf das Pluszeichen um genau in der Mitte zwischen den beiden Punkte einen weiteren einzufügen. Das gleiche machst Du mit den beiden unteren Punkten. Dann wählst Du die beiden neuen, mittleren Punkte aus und klickst genau unterhalb des "Pfad"-Menüs auf den Button "Die gewählten Knoten symmetrisch machen". Dann ziehst Du die Punkte so weit runter bis sie in etwa die Position haben wie der Mund im Vorlagenbild. Wenn Du dabei die Strg-Taste gedrückt hältst, rasten die Punkte an einem unsichtbaren senkrechten Führungslineal ein, so dass Du sie exakt senkrecht verschieben kannst. Nur die Krümmung muss nun noch angepasst werden. Dazu greifst Du Dir mit dem zweiten Tool von oben aus der Werkzeugleiste ("Bearbeiten der Knoten...") einen der Anfasser und ziehst ihn nach links oder rechts. Wenn Du dabei die Strg-Taste gedrückt hältst, hast Du wieder ein unsichtbares Lineal. Und das wiederholst Du dann mit einem der Anfasser des anderen Punktes.

Und wie gesagt, wenn Du schon beim Scannen darauf achtest das Optimum herauszuholen, kannst Du Dir viel Arbeit in der Nachbearbeitung ersparen. Wenn Du z.B. in einer zu niedrigen Auflösung scannst, wird der Rand natürlich pixelig. Bei einem scharfen Rand sowieso weit störender als bei einem weichen. Im Fall Deines Bildes sehe ich aber gar keine so starke Pixeligkeit, sondern eher eine etwas wackelige, unsaubere Linienführung. Entweder ist das so gezeichnet oder der Untergrund ist uneben, würde ich vermuten.

KwaiC 26.05.2019 10:22

Das hier angehangene Bild ist das einachste und exemplarisch für 45 weitere.
Habe es zunächst in Gimp freigestellt, so habe ich schon eine gute Grundlage, da es ja nur einfarbig ist.
In Gimp kann man entsprechend den Pfad nachzeichnen, aber die Ränder werden hier verwischt statt klare Kanten zu ziehen.
Ähnliche Erfahrung habe ich beim nachzeichnen in Inkscape gemacht.

Ein Bekannter hat mir das mit Illustrator in 1/4 Stunde umgesetzt und ich dachte, dass das auch mit Gimp und Inkscape realisierbar sein müßte

ursa major 26.05.2019 10:51

Ich erinnere mich gerade nicht so detailliert wie das in Illustrator geht. Habe es bestimmt schon seit eineinhalb Jahren nicht mehr benutzt. Es kann sein, dass die "Glätten"-Funktion dort besser funktioniert. Das Nachvektorisieren ist dort jedenfalls ein bisschen handlicher als in Inkscape, finde ich. Schon weil es für die Funktionen zum Beschneiden und Hinzufügen von Pfaden ein eigenes kleines Fensterchen gibt, wofür man in Inkscape immer das Menü öffnen oder sich Tastenkürzel merken muss. Dafür kostet Illustrator halt auch ein bisschen was.

Grundsätzlich ist es mit automatischen Funktionen meistens so, dass man Abstriche bei der Qualität und Präzision machen muss. Das versteht sich ja eigentlich auch von selbst. Der Computer und die Software können halt nicht zaubern und nur das verarbeiten, was ihnen vorliegt. Und wenn der Scan Unregelmäßigkeiten hat, dann wird das Vektorgrafik-Programm die auch mit vektorisieren. Vom Prinzip her wird die "Glätten"-Funktion von Illustrator da vermutlich auch nichts viel anderes machen als die "Vereinfachen"-Funktion von Inkscape. Nur möglicherweise etwas feiner.

Ich wäge beim Nachvektorisieren immer ab ob mir Präzision oder Zeitersparnis wichtiger ist. Das kann ja, je nach Projekt, ganz unterschiedlich sein. Wenn es auf Präzision und Sauberkeit unbedingt ankommt, vektorisiere ich immer von Hand. So sauber bekommt man es mit Automatismen so gut wie nie hin. Auch in Illustrator nicht.

Wenn Dir das mit Inkscape nicht gut genug geht, musst Du es halt mit einem anderen Programm machen. Ein vergleichbar gutes freies Vektorgrafikprogramm kenne ich allerdings nicht. Es gäbe aber noch einige, z.B. CorelDraw und Xara Xtreme. Auch die Draw-Funktionen von LibreOffice und OpenOffice. Du könntest auch mal Krita versuchen, das auch frei, eigentlich aber eher ein Malprogramm ist und für seine Vektorfunktionen ein irgendwie implementiertes Inkscape benutzt. Insofern ist es fraglich ob das besser gehen wird. Was diese Programme auf dem Sektor aktuell so alles können, kann ich aber nicht so genau sagen, weil ich für sowas aktuell fast immer Inkscape benutze.

KwaiC 26.05.2019 13:18

Es funktioniert soweit akzeptabel und ich weiß nicht den genauen Weg um ein gutes Ergebnis zu erreichen.
Welche Einstellungen soll ich bei Inkscape vornehmen um möglichst glatte Ränder zu erreichen, für solch ein schwarz weiß Bild.

ursa major 26.05.2019 14:12

Das kann man nicht so pauschal sagen. Von Größe und Auflösung her ist Dein Bild eigentlich schonmal okay, denke ich. Unschärfen und Schatten gibt es auch nicht.

Für das automatische Nachvektorisieren würde ich, wie schon gesagt, im Dialog "Bitmap nachzeichnen" (Menü "Pfad") die oberste Funktion "Helligkeitsschwellwert" versuchen (wenn Du rechts unten im Fenster auf "Aktualisieren" klickst bekommst Du eine vage Voransicht - die "Live-Vorschau ist meist eher nervig). Da noch an den Werten des Schwellwerts zu drehen bringt wohl nichts, da das Ausgangsbild ja schon, wie oben erwähnt, ziemlich okay ist. Das würde nur helfen wenn es da Grauabstufungen gäbe.

Der nächste Punkt wäre das "Vereinfachen" (Menü "Pfad"), das im Prinzip dem "Glätten" entspricht. Dabei wird errechnet welche Pfadpunkte entfernt werden können ohne das die Form insgesamt zu sehr verändert wird. An den Pfadpunkten kann man die Kurve, also die Kontur, ja per Anfasser modellieren. Das ist aber natürlich immer eine Gratwanderung, denn wenn Punkte entfernt werden verändert sich natürlich auch immer etwas an der Form. Und um nur die Veränderungen zu machen, die man als Nutzer haben will, müsste die Software schon Gedanken lesen oder hellsehen können. Für die Software ist das ja kein Bild, sondern nur eine Ansammlung von Daten. Feinere Einstellungen gibt es da nicht. Man kann den Vorgang nur wiederholen, falls einem das erste Ergebnis noch nicht ausreicht.

Ich habe es mit Deinem Bild gerade mal probiert. Da werden beim "Vereinfachen" wirklich sehr viele Punkte entfernt. Es findet also eine sehr erhebliche Glättung statt. Leider liegen die verbleibenden Punkte nicht unbedingt da wo ich sie gern hätte um möglichst leicht kleine Korrekturen vornehmen zu können. Das ist halt das Problem bei Automatismen. Allerdings weiß ich auch nicht wie Du das Ergebnis haben willst. Wenn Du z.B. willst, dass das Gesicht aus einem perfekten Kreis besteht, gibt das die Vorlage nicht her. Ich habe gerade mal ein gespiegeltes Duplkat der vektorisierten Zeichnung über die erste Vektorisierung gelegt, und da zeigt sich deutlich, dass die nicht deckungsgleich sind. Alle anderen Elemente übrigens auch nicht. Da wäre die einfachste Lösung also wirklich das von Hand zu machen. Das wäre, wie schon gesagt, auch keine große Sache.

Wenn es hingegen nur darauf ankommt, dass die Konturen einigermaßen glatt aussehen, dann könntest Du einfach nur die Stellen, wo es nicht so ist, anhand der Anfassser der Beziérkurve (mit dem Werkzeug "Bearbeiten der Knoten und Anfasser...") leicht korrigieren. Wenn Du mit dem entsprechenden Tool auf die Form klickst, kannst Du ja die Punkte sehen. Wenn Du auf die Punkte klickst, wo es Dir nicht glatt genug ist, kannst Du dort auch sehen wie die Anfasser stehen. Dann kannst Du zur Korrektur entweder an den Anfassern ziehen oder in manchen Fällen auch einfach mal oben, untehalb der Menüs "Objekt", "Pfad" und "Text" auf die Buttons. Einfach mal ausprobieren und wenn es nicht so wird wie Du es haben willst, rückgängig machen. Vektorisieren ist nicht zuletzt Übungssache. Diese Beziérkurven erscheinen erstmal ziemlich abstrakt und frickelig. Wenn man sich da aber erstmal ein bisschen reingefummelt hat, merkt man wie genial und hilfreich die sind. Es zu erklären ist da teils komplizierter als es einfach auzuprobieren.

Die Frage wäre noch, ob die Ecken, z.B. bei den Haaren und beim Mund, eckig oder abgerundet sein sollen. Wenn sie eckig sein sollen wird es mit der automatischen Nachvektorisierung schwierig, weil die verbleibenden Pfadpunkte nicht auf den Ecken liegen. In der Vorlage sind sie ja alles andere als eckig. Da wäre es dann wirklich einfacher gleich von Hand zu vektorisieren.

Wieviele Bilder wilsst Du eigentlich Vektorisieren? Und ist das etwas, was Du nur einmal machen willst, oder willst Du zukünftig öfter mal was mit Vektoren machen? Da stellt sich nämlich auch irgendwann die Frage nach der Wirtschaftlichkeit. Nur weil man gerade mal ein paar Zeichnungen Vektorisieren will und dann nie wieder, lohnt es natürlich nicht unbedingt Unmengen an Zeit in das Erlernen eines Programms zu investieren. Es sei denn man braucht es unbedingt und hat niemanden, der das für einen machen könnte.

KwaiC 26.05.2019 15:56

Zitat:

Zitat von KwaiC (Beitrag 161540)
Das hier angehangene Bild ist das einachste und exemplarisch für 45 weitere.

Habe eine einigermaßen Lösung gefunden. In Inscape das Bild nachzeichnen mit Hintergrund entfernen, danach kopieren und in eine neue Datei einfügen, diese dann als svg oder png speichern.

Stellenweise ist der Rand nicht einwandfrei, da ich diese Bilder aber nicht plottern muß, ist es nicht so dramatisch. Evtl. kann mann einige unschöne Kanten noch händisch nachziehen. Wie würde das gehen?

ursa major 26.05.2019 17:19

Abgefahren, diese Checkbox "Hintergrund entfernen" ist mir nie aufgefallen. Habe das immer manuell gemacht. So habe ich auch noch was gelernt.

Warum hast Du das vektorisierte Bild denn in eine neue Datei eingefügt? Du kannst es doch auch so einfach als SVG speichern.

Wenn Du es als PNG exportierst ist das aber dann ein Pixelbild. Das kannst Du nicht ohne Qualitätsverluste skalieren. Das kannst Du nur mit der SVG-Datei (den Unterschied kannst Du ganz gut im Wikipedia-Artikel zum Thema "Vektorgrafik" sehen - an dem Beispiel mit den Haltestellenschildern). Und das PNG hat natürlich auch keine Pfade zum Modellieren. Grundsätzlich würde ich immer empfehlen alles was Du in Inkscape machst wenigstens zur Sicherheit auch als SVG zu speichern. Möglichst schon gleich zu Anfang, und dann immer mal mit Strg+S zwischenspeichern, damit Du nicht neu anfangen musst wenn das Programm abstürzt. Wenn Du das Bild für eine Webseite brauchen solltest, wird das SVG wahrscheinlich nicht das sein, was Du in die Webseite einbinden willst, denn mit SVG kann der Internet Explorer nicht umgehen. Da wäre ein PNG oder JPEG besser. Aber als Arbeitsdatei ist das SVG grundsätzlich ratsam, wie bei GIMP das XCF zu empfehlen ist. Das sind die jeweiligen Hausformate.

Beim Exportieren als PNG sollte man übrigens immer darauf achten was man da exportiert: die ganze "Seite", die "Zeichnung", die "Auswahl" oder "Benutzerdefiniert". Sonst stellt man mitunter fest, dass man auch Sachen exportiert hat, die man nicht haben wollte, dass die Zeichnung mittendrin abgeschnitten ist oder dass auch mal gar nichts auf dem PNG ist. Ich exportiere meist die Auswahl, wozu alles was exportiert werden soll ausgewählt sein muss. Das hängt aber mit meiner Arbeitsweise zusammen, bei der ich oft noch Kopien und anderes Zeug außen irgendwo rumliegen habe.

Wie man das mit dem Korrigieren der Unregelmäßigkeiten macht hatte ich schon erwähnt: mit dem Werkzeug "Bearbeiten der Knoten oder der Anfasser..." auf den Pfadpunkt klicken wo die Unregelmäßigkeit liegt und dann an den Anfassern so ziehen, dass sich der Rand Deinen Vorstellungen gemäß verformt. Der eigentliche Pfad ist ja die Kontur, in Form einer Beziér-Kurve. Die grobe Form wird durch die Pfadpunkte vorgegeben, die durch die Pfadlinie verbunden sind. Die ist im Prinzip zunächst mal zwischen den Punkten exakt gerade, lässt sich aber durch die Anfasser verbiegen. Pro Punkt gibt es zwei Anfasser. Das ist ein altbewährtes Prinzip, das in sehr vielen Programmen Verwendung findet. Es gibt da noch so einige Sachen die man machen kann um deren Verhalten zu beeinflussen. Das beste wäre es wenn Du dazu mal in der Dokumentation nachlesen würdest oder Dir Tutorials anguckst (gibt es beides auf der Inkscape-Webseite unter "Lernen". Hier ist ja eigentlich das GIMP-Forum, und es wird hier auch langsam etwas komplex und wiederholt sich zum Teil. Ich helfe ansonsten gern, aber ich denke, Du solltest Dich mal genauer mit den Grundlagen beschäftigen, sonst läuft das zu sehr durcheinander.


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:51 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.