Fahrtenbuch genial!
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 06.10.2004, 14:16   #1
TP-Insider
 
Benutzerbild von tribun
 
Registriert seit: Jun 2003
Ort: Beckingen, Saarland
tribun ist auf einem guten Weg

Foto dynamisch einfärben?


Hallo,

ich bin am überlegen, ob und wie ich eine Grafik dynamisch einfärben kann.
Beispiel:
Ein Produkt (z. B. ein Auto oder ein Kugelschreiber) wird als Bild auf einer Website gezeigt. Der Besucher soll nun aus einer Palette eine andere Farbe auswählen können und das Produkt wird nun in der gewünschten Farbe dargestellt. Vorlage ist ein Foto, keine Vektor-Datei (z. B. SVG).

Kann man sowas mit ImageMagick hinkriegen? Oder ist der Versuch zwecklos und ich sollte lieber die Bilder per PS oder FW einfärben und einzeln auf dem Server ablegen? Das allerdings wäre für den geplanten Zweck etwas umständlich.

Freue mich auf eure Tips!

Gruß
Tribun
__________________
if (!isset($plan)) {
$antwort1 = forum_suche($frage);
$antwort2 = google_suche($frage);
if ($antwort1 == "" && $antwort2 == "") {
$post = forum($frage);
$plan = $post;
}
}
array_push($community, $plan);
tribun ist offline   Mit Zitat antworten


Alt 06.10.2004, 14:28   #2
TP-Supporter
 
Benutzerbild von CB.NET
 
Registriert seit: Jun 2003
Ort: Fürth
CB.NET macht sich hier sehr viel Mühe
hallo,

abgesehen, dass es sogar mit der GD-LIB möglich ist, ein bild einzufärben
ist es meiner Meinung nach eher nicht sinnvoll, das per php zu realisieren...

ich würde dann doch lieber den Umweg gehen und jedes Farbbild einzeln auf den Server zu packen

das spart dann doch dem Server Rechenzeit und der Besucher wartet dann doch nicht so lange,
__________________
Die perfekte Web-Applikation ist: sicher,skalierbar,schnell, anwenderfreundlich,intuitiv, wiederverwendbar,flexibel,transparent,umfassend,dynamisch, zuverlässig,einfach,modular,effizient, stabil,handhabbar,verteilt,robust, persistent,kollaborativ,mächtig,intelligent,leicht verwendbar,portierbar,erweiterbar,
fehlerfrei, und zu guter Letzt billig
CB.NET ist offline   Mit Zitat antworten
Alt 06.10.2004, 14:51   #3
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Das Hauptproblem beim Umfärben eines Objekts auf einem Foto ist wohl, dass selbst ein an sich einfarbiger Gegenstand auf dem Bild wegen Schattierungen und Reflexionen nicht einfarbig ist.

Wenn du ein fotorealistisch abgebildetes Objekt umfärben möchtest, dürftest du deshalb von jedem Pixel nicht die endgültige Farbe, sondern nur den Tonwert ändern.

Theoretisch machbar wäre das, wie CB.NET schon sagt, auch mit der GD-Lib, entsprechenden Denkaufwand vorausgesetzt .
Wie gut es aber im Endeffekt tatsächlich gelingt, kann ich momentan nicht einschätzen, dazu hab ich zu wenig Erfahrung in Sachen Bildbearbeitung.

"Pipileicht" wäre es hingegen, wenn du deine Fotos im Grafikprogramm so vorbeiten würdest, dass die umzufärbenden Flächen wirklich einfarbig sind, und zwar in einer speziellen Farbe, die sonst nirgendwo im Bild vorkommt.

Dann könnte man in einer primitiven zweidimensionalen Schleife das Bild Pixel für Pixel abtasten und jeden gefundenen Pixel in der "Ersetzfarbe" beliebig umfärben. Sieht bei Fotos halt nicht mehr so toll aus...


Was die Rechenleistung betrifft, hab ich keine Bedenken. Ich würde alle erzeugten Bilder auf der Festplatte speichern. Wenn dann das Bild für eine gewünschte Farbe schon vorhanden ist, braucht es nicht neu generiert zu werden.
seb ist offline   Mit Zitat antworten
Alt 06.10.2004, 17:01   #4
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
An das mit der "einen Farbe" habe ich auch gedacht. Rein theoretisch müsstest du dann nur einen Farbindex in der Palette neu setzen und das Bild wäre fertig Sollte auch performance-mässig noch ganz gut sein (denke ich mal). Das mit der Schleife - Pixel für Pixel - kannst du dir auf alle Fälle sparen.

Evtl. kann man aber auch über die gesamte Palette die Farben ändern, wenn diese nach einem bestimmten schema aufgebaut ist... nur ne Idee... obs umzusetzen ist: keine Ahnung

Gruss
Jan
Stuck Mojo ist offline   Mit Zitat antworten
Alt 06.10.2004, 17:16   #5
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Zitat:
Rein theoretisch müsstest du dann nur einen Farbindex in der Palette neu setzen und das Bild wäre fertig Sollte auch performance-mässig noch ganz gut sein (denke ich mal). Das mit der Schleife - Pixel für Pixel - kannst du dir auf alle Fälle sparen.
Stimmt, das ist wesentlich schlauer (vergiss das mit der Schleife ganz, ganz schnell, ok? ).
seb ist offline   Mit Zitat antworten
Alt 06.10.2004, 17:37   #6
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Mir fällt gerade ein, wie man eine Umfärbung mit Beibehaltung von Schattierungen und Reflexionen sehr einfach mit wahrscheinlich gutem, wenngleich nicht perfektem Ergebnis bewerkstelligen könnte:

Du bearbeitest deine Originalfotos so, dass jeder umzufärbende Pixel nur noch in Graustufen gespeichert wird (also gleiche Anteile Rot, Grün und Blau).

Damit behalten die umzufärbenden Pixel die Information über ihre Helligkeit und können trotzdem noch vom Programm als Umfärbe-Kandidaten erkannt werden (nämlich eben darüber, dass R, G und B identisch sind).

Mit der Doppelschleife (die du diesmal wirklich bräuchtest, falls mir nicht gerade wieder der Supertrick nicht einfällt) könntest du dann jeden dieser Pixel mit teiltransparenter Farbe "übermalen" (Farberzeugung per imagecolorallocatealpha) oder alternativ eine neue, 100% deckende Farbe anhand des ursprünglichen Farbwertes erzeugen (z.B. +30% grün gegenüber dem jeweiligen Grauton).

Vielleicht ist das die Vorgehensweise mit dem besten Verhältnis von Aufwand zu Resultat.

EDIT

Und eben fällt mir noch eine bessere Methode ein, aber da ich heute auch mal noch was anderes tun sollte als einen Forenbeitrag nach dem anderen zu schreiben , wart ich erstmal ab, was du vom Vorschlag oben hältst. Vielleicht reicht der dir ja.

Geändert von seb (06.10.2004 um 17:57 Uhr).
seb ist offline   Mit Zitat antworten
Alt 06.10.2004, 18:30   #7
TP-Insider
 
Benutzerbild von tribun
 
Registriert seit: Jun 2003
Ort: Beckingen, Saarland
tribun ist auf einem guten Weg
Ui ui ui... Ihr seid echt klasse!
Da muss ich mal sehen, wie ich das mache.... Stecke in der GDLib ja gar net so tief drin...
Zitat:
Zitat von seb
Und eben fällt mir noch eine bessere Methode ein
Nur her damit!
Bin für alles dankbar.
__________________
if (!isset($plan)) {
$antwort1 = forum_suche($frage);
$antwort2 = google_suche($frage);
if ($antwort1 == "" && $antwort2 == "") {
$post = forum($frage);
$plan = $post;
}
}
array_push($community, $plan);
tribun ist offline   Mit Zitat antworten
Alt 06.10.2004, 19:06   #8
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Scheiße...wenn mich mal irgendeine Idee gepackt hat, kann ich's nicht seinlassen.

Here we go:

Original:


Rot:


Komisches Blau, noch nicht sauber:


In Richtung Gelb:



Wie man sieht, ist die Farbneuzuordnung noch nicht ausgereift, aber das kann man natürlich noch verbessern.

Dummerweise bin ich rotblind und kann deshalb viele Farbtöne nicht unterscheiden, d.h. mir fällt es bei solchen Sachen schwer, die Ergebnisse auszuwerten und daraus Schlüsse auf Verbesserungsmöglichkeiten bei der Farbberechnung zu ziehen.

Ich hab z.B. nur mit der Photoshop-Pipettenfunktion bemerkt, dass der Fuß des Frosches in allen verfärbten Bildern immer noch Grün ist...das is ein bisschen blöd...aber naja.

Geändert von seb (06.10.2004 um 19:15 Uhr).
seb ist offline   Mit Zitat antworten
Alt 06.10.2004, 19:17   #9
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Geil!
Stuck Mojo ist offline   Mit Zitat antworten
Alt 06.10.2004, 19:19   #10
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Das ist übrigens nicht die Methode mit den Graustufen, sondern diejenige, mit der es noch besser gehen müsste. Aber wie gesagt, ich hab echt Probleme, die Ergebnisse einzuschätzen.

Wie groß sind die Farbunterschiede auf der Fläche des Frosches bei den verschiedenen Bildern? Sind die richtig bunt oder könnte man sie so lassen?
seb ist offline   Mit Zitat antworten
Alt 06.10.2004, 19:21   #11
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Die Flächen sehen klasse aus... nur der Gelde ist halt mehr grün... Aber cool!
Stuck Mojo ist offline   Mit Zitat antworten
Alt 06.10.2004, 19:31   #12
TP-Insider
 
Benutzerbild von tribun
 
Registriert seit: Jun 2003
Ort: Beckingen, Saarland
tribun ist auf einem guten Weg
Boah! Ich bin dermassen begeistert! *hechel*
__________________
if (!isset($plan)) {
$antwort1 = forum_suche($frage);
$antwort2 = google_suche($frage);
if ($antwort1 == "" && $antwort2 == "") {
$post = forum($frage);
$plan = $post;
}
}
array_push($community, $plan);
tribun ist offline   Mit Zitat antworten
Alt 06.10.2004, 23:20   #13
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Live zum Testen:

http://www.rotblind.de/colorize/colorize.php
seb ist offline   Mit Zitat antworten
Alt 06.10.2004, 23:32   #14
Guest
 
Registriert seit: Aug 2002
Strogij hilft, wo's gehtStrogij hilft, wo's geht
Was hast du denn für Methode angewendet? Das dauert ja bischl...
Strogij ist offline   Mit Zitat antworten
Alt 06.10.2004, 23:48   #15
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Zitat:
Das dauert ja bischl.
Für dieses Bild 192600 mal imagecolorat(), 96300 mal setpixel() + eine Hand voll Farbumrechnungen . Ist noch nicht geschwindigkeitsoptimiert, falls das überhaupt mit vernünftigem Aufwand möglich ist.

Die umzufärbende Fläche wird jetzt doch zuerst in Graustufen konvertiert. Die vermeintlich noch bessere Möglichkeit war ein Denkfehler.

Geändert von seb (07.10.2004 um 00:17 Uhr).
seb ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Foto dynamisch einfärben? Foto dynamisch einfärben?
« [php]Text kürzen und per "mehr..." wieder lang machen | headers already sent by?! »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mein Foto auf NDP-Homepage! achimer Archiv 9 27.04.2004 17:36
Foto zur Zeichnung machen ? Mamboleo Photoshop 12 10.01.2004 13:05
Pfeil mit Foto füllen Bisch Photoshop 34 07.05.2003 15:06
Gebilde aus Linien einfärben, wie ? Nofear Fireworks 10 28.05.2002 18:33


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:36 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67