Bild verkleinern, Grafik Filter - verwischen
-
Ahvolon[F-Bytes] schrieb:
@rapso: Der Source ist absoluter Quatsch. Das ist nicht mehr als ne primitive Blur-Form. Und der Kontrast wird dadurch ganz sicher nicht besser sondern lediglich schlechter.
danke gfx-guru
tja, schade, dass das was photoshop und die meißten anderen programme beim verkleinern von bildern machen quatsch ist, leider macht photoshop das so, wenn du bilder 'bilinear' verkleinerst.
und der filter dahinter macht jede farbe bis auf weiß (1.f,1.f,1.f) dunkler, was dafür sorgen würde dass irgendwelche mittelwerte zwsichen 1.f und 0.f schwärzer werden würden und er somit seine linie besser sehen könnte.rapso->greets();
-
Acidmrp schrieb:
bei einer einzelnen Linie könnte ich diese schon breiter machen. Wenn es nun
aber mehrere sind und dann noch ein Gitternetz hinzukommt (Schaubild) wird die
Sache super kompliziert und das verkleinerte Bild würde wohl sehr "pixelig"
werden.Es geht mir im Grunde nur darum eine Vorschau zu erstellen.
Ich muss ein paar Diagramme drucken. Wenn ich diese nun in einer
Auflösung von 75 DPI anzeige, sind sie am Monitor gut zu sehen,
auf dem Drucker kommen sie aber mega schlecht raus. Wenn ich die Bilder
stauche, kann man am Monitor nichts mehr sehen und am Drucker sieht es gut aus.Nun will ich eine eigene Routine schreiben, die die Bilder stuacht und eine
extra Vorschau für den Monior erstellt.wäre sowas ok?
das entsteht wenn du es so machst wie in meinem pseudocode beschrieben
rapso->greets();
-
du solltest mal bei google unter sampling bzw. sub-sampling (verkleinern von bildern mit filtern) schauen. beim resizen werden ja einfach brutal pixel gekillt.
ImageMagick bietet sowas zum beispiel an (sourceforge).
ein linie in nem bild zu verbreitern und sie anschliessend zu verkleinern ist viel zu aufwendig. auch eine kontur-extraktion kommt nicht in frage. da müssten viel zu viele kleinigkeiten berücksichtigt werden.
ich würde beim filtern eher noch die 8er-nachbarschaft betrachten und nicht nur die 4er.
-
Sunday schrieb:
@rapso
ich würde beim filtern eher noch die 8er-nachbarschaft betrachten und nicht nur die 4er.war ja auch nur ein pseudocode
ich würde es auch mit verschiedenen patterngrößern und gewichtungen versuchen.rapso->greets();
-
Das war weder Achter- noch Vierernachbarschaft. Und das man die bekannten Verkleinerungsalgorithmen bei Google raussuchen kann, ist auch klar. Also sollte man das einfach tun, wenn die Vorschläge hier "Mist" sind.
Bye, TGGC (Dem beste BdT)
-
@rapso: Das ganze wird bei einer Linie von 1 Pixel nicht helfen. Nehmen wir an du hast in der Maske 4 Pixel. Davon 3 weiße und einen schwarzen.
Dem entsprechend kommst du auf: ( 0+1+1+1 ) * 0.25 = 0.75
Im entstehenden Bild also dann 0.75^3 = 0.42... .Schon ein tolles Resultat
Je größe du die Maske wählst, desto schlechter wird das Resultat. Auch klar, denn bei einer Linie von 1 Pixel Breite überwiegt der Hintergrund.
-
Ahvolon[F-Bytes] schrieb:
@rapso: Das ganze wird bei einer Linie von 1 Pixel nicht helfen. Nehmen wir an du hast in der Maske 4 Pixel. Davon 3 weiße und einen schwarzen.
Dem entsprechend kommst du auf: ( 0+1+1+1 ) * 0.25 = 0.75
Im entstehenden Bild also dann 0.75^3 = 0.42... .Schon ein tolles Resultat
Je größe du die Maske wählst, desto schlechter wird das Resultat. Auch klar, denn bei einer Linie von 1 Pixel Breite überwiegt der Hintergrund.dieser worstcase tritt kaum auf, da die linie nebeneinander liegende pixel hat, meißtens also 0.5 als resultat und nach dem filter wäre 0.125, das resultat ist dann so und als verkleinerung vom orginal recht ok.
ich hab von dir noch keinen 10-zeiler gesehen mit besseren resultaten
rapso->greets();
-
rapso schrieb:
dieser worstcase tritt kaum auf
Dieser Fall tritt bei Linien mit Kurven recht häufig auf, was mehr als deutlich an deinem Resultat zu sehen ist.
rapso schrieb:
recht ok.
Dann solltest du dir das ganze vielleicht nochmal genauer ansehen.
rapso schrieb:
ich hab von dir noch keinen 10-zeiler gesehen mit besseren resultaten
Sorry, dass ich keinen Source poste bei dem die Resultate so schlecht sind wie bei deinem. Da könnte er letztendlich auch seine Methode nehmen und am Ende nen Blur Filter drüber laufen lassen. Die Qualität wäre dann genauso schlecht.
-
Genuch Geflame ihr zwei!!
Sonst kommt der böse rapso, und schließt den Laden hier!!
-
Ahvolon[F-Bytes] schrieb:
rapso schrieb:
dieser worstcase tritt kaum auf
Dieser Fall tritt bei Linien mit Kurven recht häufig auf, was mehr als deutlich an deinem Resultat zu sehen ist.
kurven=selten=kaum vorhanden.
Ahvolon[F-Bytes] schrieb:
rapso schrieb:
recht ok.
Dann solltest du dir das ganze vielleicht nochmal genauer ansehen.
deaktivier dein "reality distortion field".
Ahvolon[F-Bytes] schrieb:
rapso schrieb:
ich hab von dir noch keinen 10-zeiler gesehen mit besseren resultaten
Sorry, dass ich keinen Source poste ...
du brauchst dich nicht dafür entschuldigen, dafür hast du hier viele beiträge gebracht ohne weiter zu helfen.
rapso->greets();
-
rapso schrieb:
kurven=selten=kaum vorhanden.
Sieh dir dein Resultat mal genau an. So blind wie du kann man doch echt nicht sein. Solltest vielleicht mal einsehen, dass weder du noch dein Resultat hier auch nur annähernd perfekt ist.
-
Ahvolon[F-Bytes] schrieb:
rapso schrieb:
kurven=selten=kaum vorhanden.
Sieh dir dein Resultat mal genau an. So blind wie du kann man doch echt nicht sein. Solltest vielleicht mal einsehen, dass weder du noch dein Resultat hier auch nur annähernd perfekt ist.
jaja sprücheklopfer, nun ist gut
rapso->greets();
-
um rapso zu unterstützen, ich versteh ehrlich gesagt auch nicht, was dieser Ahvolon immer meint besser zu wissen / zu sein. Immer nur Kritik üben aber keine besseren Vorschläge machen, und das in einem Ton, der durchaus wütend machen kann.
-
rapso schrieb:
jaja sprücheklopfer, nun ist gut
Man sollte meine, dass ein kurzes Blick auf das Bild meine Aussagen mehr als verdeutlicht. Aber erzähl nur ruhig immer das Gegenteil von dem was auf deinem Bild zu sehen ist. Naja, manche Menschen sind ja so derart selbstverliebt...
-
Ahvolon[F-Bytes] schrieb:
rapso schrieb:
jaja sprücheklopfer, nun ist gut
Man sollte meine, dass ein kurzes Blick auf das Bild meine Aussagen mehr als verdeutlicht. Aber erzähl nur ruhig immer das Gegenteil von dem was auf deinem Bild zu sehen ist. Naja, manche Menschen sind ja so derart selbstverliebt...
...und manchmal labern leute sehr viel ohne auch nur einmal zu helfen.
rapso->greets();
-
Es ist schon ne tolle Hilfe wenn man das Ausgangsbild vollkommen kaputt macht und dann so tut als ob es nichts anderes gäbe als den eigenen Algo.
-
Ahvolon[F-Bytes] schrieb:
Es ist schon ne tolle Hilfe wenn man das Ausgangsbild vollkommen kaputt macht und dann so tut als ob es nichts anderes gäbe als den eigenen Algo.
solange du es nicht geschaft hast überhaupt einen anderen zu machen als "linien breiter machen" bin ich zufrieden mit meinem.
rapso->greets();
-
Ich habe ihm gesagt wies geht. Wenn er es nicht umsetzt ist das nicht mein Problem. Es ist aber mehr als fehl am Platz hier einen mehr als minderwertigen Source zu posten und sich dann als großen Wohltäter hinzustellen. kritik solltest du schon mal annehmen, vorallem bei solchen Resultaten.
-
Ahvolon[F-Bytes] schrieb:
Ich habe ihm gesagt wies geht. Wenn er es nicht umsetzt ist das nicht mein Problem.
du meinst also:
Ahvolon[F-Bytes] schrieb:
Wieso lässte die Linie nicht vorhher um nen bestimmten Betrag dicker zeichnen ?
auf die er wohl antwortete.
Acidmrp schrieb:
bei einer einzelnen Linie könnte ich diese schon breiter machen. Wenn es nun
aber mehrere sind und dann noch ein Gitternetz hinzukommt (Schaubild) wird die
Sache super kompliziert und das verkleinerte Bild würde wohl sehr "pixelig"
werden.deswegen quengelst du rum, weil er deine methode gleich verworfen hat... na gut, dann hast du natürlich recht, deine idee "lienien breiter machen" ist viel besser als auf seine frage zu antworten
acidmrp schrieb:
Weiß jemand wie das Grafikprogramme wie ACDSee & Co machen? Kennt jemand einen Algorithmus um ein Bild zu verwischen bzw. weich zu zeichnen?
so wie ich das gemacht habe... mag sein dass der algorithmus scheisse ist, aber so macht das photoshop nunmal wenn man bilinear ein bild verkleinert und damit hab ich nur seine frage beantwortet... mehr nicht.
rapso->greets();
-
Ich würds einfach mit GDI+ probieren, dass kann auch bilinear und bikubisch resizen...