Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann (https://www.delphipraxis.net/168684-funktion-komponente-gesucht-s-w-bilder-mit-rasterung-erzeugen-kann.html)

Bernhard Geyer 4. Jun 2012 08:56

Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Hallo,

ich habe hier Farb/SW-Bilder und möchte diese nach S/W wandeln und für die Graustufen/Farben eine Rasterung erhalten
Kenn jemand eine (einfache) Komponenten welche so ein Rasterung bei der S/W-Wandlung unterstützt?

bernhard_LA 4. Jun 2012 09:21

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
geht es um dieses Thema http://cardhouse.com/computer/vector.htm

Bernhard Geyer 4. Jun 2012 09:39

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von bernhard_LA (Beitrag 1169406)

Ich will keine Vektorisierung. ich will ein Raster.
Siehe auch Anhang

bernhard_LA 4. Jun 2012 10:02

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
dh. der Inhalt im Rasterbitmap ist z.B. der Mittelwert eines Quadrats der Größe X*Y Pixel im Ursprungsbild ?

bernau 4. Jun 2012 10:28

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Zitat:

Zitat von bernhard_LA (Beitrag 1169415)
dh. der Inhalt im Rasterbitmap ist z.B. der Mittelwert eines Quadrats der Größe X*Y Pixel im Ursprungsbild ?


Eher umgekehrt. Wenn ein Drucker keine Graustufen kann, dann musst du ein gerastertes Bild an den Drucker senden. Ein Graustufenpunkt wird dann in mehrere SW-Punkte aufgeteilt, damit wieder eine Graustufe heruas kommt.

Thom 4. Jun 2012 10:30

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Vielleicht hilft Dir das weiter.

Medium 4. Jun 2012 10:44

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
shima hat da mal was gebaut.

Generelles Stichwort ist hier "dithering", welches man auf mannigfaltige Art und Weise mit diversesten Charakteristiken machen kann - und auch beliebig kompliziert ;)
Das Bild oben schaut aber nach Floyd-Steinberg aus. Hupps, das Bild oben ist nicht FS, FS ist meist hübscher :)

Thom 4. Jun 2012 10:57

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
@Medium:

Hättest Du Dir mal die "Mühe" gemacht, auf den von mir angegebenen Link zu klicken, wäre Dir aufgefallen, daß es sich um einen derartigen Dither-Algorithmus handelt...

P.S.:
Die Stichworte Bei Google suchenDelphi Dithering liefern viele Beiträge zu diesem Thema - unter anderem auch eine schöne Übersicht.

Medium 4. Jun 2012 11:17

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Dein Beitrag stand noch nicht dort, als ich meinen anfing zu verfassen. Dein Ton ist scheisse überarbeitungswürdig.

Bernhard Geyer 4. Jun 2012 12:41

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Danke. Dithering ist genau der Begriff der mir gefehlt hat.
Ich denke damit komme ich zurecht.

Bummi 4. Jun 2012 15:43

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Ich habe eine ältere Implementierung von shima etwas beschleunigt und vereinfacht...

Bernhard Geyer 31. Jul 2012 11:42

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Die Funktion Floyd_Steinberg muss noch besser die Grenzen abprüfen. Sonst kracht es am Ende des Bildes ...

Die Abfragen mit if x < BMP.Width - 1 then wurden ergänzt

Delphi-Quellcode:
      if x < BMP.Width - 1 then
        FastPixel(BMP, CArray, x + 1, y, ApplyError(FastPixel(BMP, CArray, x + 1, y), error, 7));

      if y < BMP.Height - 1 then
      begin
        if x > 0 then
          FastPixel(BMP, CArray, x - 1, y + 1, ApplyError(FastPixel(BMP, CArray, x - 1, y + 1), error, 3));

        FastPixel(BMP, CArray, x, y + 1, ApplyError(FastPixel(BMP, CArray, x, y + 1), error, 5));
       
        if x < BMP.Width - 1 then
          FastPixel(BMP, CArray, x + 1, y + 1, ApplyError(FastPixel(BMP, CArray, x + 1, y + 1), error, 1));
      end;

Bummi 31. Jul 2012 11:55

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Liste der Anhänge anzeigen (Anzahl: 1)
@Bernhard Geyer

Im Anhang die berichtige Version ....

nahpets 31. Jul 2012 22:24

AW: Funktion/Komponente gesucht S/W-Bilder mit Rasterung erzeugen kann
 
Hallo,

wenn's auch was kosten darf, schau bitte mal hier: http://www.xequte.com/imageen/info/index.html.

Habe vor Jahren mal bei einem ehemaligen Arbeitgeber damit gearbeitet, wenn auch nur kleine Teilmengen genutzt. Scheint äußerst vielseitig zu sein und die heutige Featureliste ist größer, als die von damals.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:42 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