AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Verlustfreies Zoomen von Bildern (Interpolieren)
Thema durchsuchen
Ansicht
Themen-Optionen

Verlustfreies Zoomen von Bildern (Interpolieren)

Ein Thema von Stanlay Hanks · begonnen am 18. Okt 2003 · letzter Beitrag vom 20. Okt 2003
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.588 Beiträge
 
Delphi 12 Athens
 
#30

Re: Verlustfreies Zoomen von Bildern (Interpolieren)

  Alt 20. Okt 2003, 21:56
Scharf bekommt man die gezoomten Bilder nicht beim interpolieren.
Die einzige Möglichkeit in deinem Bild scharfe Kanten zu bekommen ist den linken Button [Zoom] zu benutzen.

Mit X2/Y2 lege ich fest, welche 4 Pixel für die Berechnung des neuen Pixels verwendet werden.
Und mit der "Wertigkeit" wird bestimmt welchen Einfluss diese Pixel auf den neuen Farbwert haben.
D.h. je näher ein Pixel ist, desto größer ist auch dessen Einfluss.

Hab' mal im Beispielbild eine Vergrößerung von 5 gewählt, um es einfach zu halten.
In diesem 3x3 Pixel großen Bild sind die "Hauptpixel" und der Farbverlauf zwischen den 4 Pixeln unten rechts eingezeichnet.
Hier ist auch erkennbar das, wenn ein berechnetes Pixel einem "Hauptpixel" näher kommt es ihm immer ähnlicher wird.

Hierbei sollte aber auch erkennbar werden, dass am rechten und unteren Rand des Bildes sich ein Fehler einschleicht, da hier die Farbwerte mit den Randpixeln und Pixeln außerhalb des Bildes berechnet werden.
Diesen Fehler hab ich aber nicht behoben, um euch die Arbeit und das erkennen des Prinzips nicht zu erschweren.
Es handelt sich dabei um einen Rand von Aufrunden(eins * Zoomfaktor[%]) Pixeln. Und da die Pixel außerhalb des BitMaps als schwarz erkannt werden, gibt es dort einen schwarzen Farbverlauf in Richtung Bildrand. (fällt also kaum auf)
Wenn ihr irgendwann mal diesen "unbedeutenden" Fehler beheben wollt, könnt ich euch melden. Die Adresse habt ihr ja.


Die einzige Möglichkeit die ich sehe, das Bild zu gleich scharf und nicht pixelig zu bekommen, währe so etwas wie 'ne KI zu verwenden. Die dann entscheidet, wann ein scharfer oder ein weicher Übergang nötig ist.


Also dann noch viel Spaß damit.
Angehängte Grafiken
Dateityp: bmp beispiel_546.bmp (107,0 KB, 42x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz