AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 18:17

Parameter dieser Suchanfrage:

Suche in Thema: Durchschnittsfarbe eines Bitmap "schnell" ermitteln
Suche alle Beiträge, die von "Amateurprofi" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 6 von insges. 6 Treffern
Suche benötigte 0.001s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Multimedia

    AW: Durchschnittsfarbe eines Bitmap "schnell" ermitteln

      Delphi
      by Amateurprofi, 12. Mai 2021
    Ja, außer dass die vor dem eigentlichen "Zählen" die Daten aus der Bitmap in ein Array kopieren.
  • Forum: Multimedia

    AW: Durchschnittsfarbe eines Bitmap "schnell" ermitteln

      Delphi
      by Amateurprofi, 11. Mai 2021
    Meine Assembler-Routinen arbeiten so:
    Bei der 32Bit-Version werden für eine Zeile die R, G, B Werte in 32-Bit Registern summiert.
    Ein Überlauf kann also frühestens dann auftreten, wenn die Bitmap breiter ist als High(Cardinal)/255 = 16843009 Pixel.
    Die Summen je Zeile werden dann in UInt64-Variablen summiert.
    Bei der 64Bit-Version werden die Summen der R,G,B Werte in 64Bit-Registern gebildet ...
  • Forum: Multimedia

    AW: Durchschnittsfarbe eines Bitmap "schnell" ermitteln

      Delphi
      by Amateurprofi, 11. Mai 2021
    Nein, ich hab darüber keine Literatur.
    In einem anderen Projekt habe ich auch mal Durchschnittswerte gebildet, indem ich jedes Pixel in HSB umgerechnet, und die AvgWerte für H, S, B ermittelt und anschließend die Avg-HSB Werte wieder in RGB umgerechnet habe.
    Egal wie ich die Avg-Werte errechnet habe, irgendwie wirkte die Avg-Farbe immer, wie soll ich es ausdrücken, "schmutzig". Aber vielleicht...
  • Forum: Multimedia

    AW: Durchschnittsfarbe eines Bitmap "schnell" ermitteln

      Delphi
      by Amateurprofi, 11. Mai 2021
    @KodeZwerg:

    In #16 wurde in den Raum geworfen, ob man nicht einfach ein Resize auf 1x1 Pixel machen kann.
    Ich hab das mal geprüft und in meiner Funktion TestGetAvgColor; vor dem Bmp.Free folgendes eingefügt:

    T3:=GetTickCount;
    Bmp2:=TBitmap.Create;
    Bmp2.PixelFormat:=pf24Bit;
    Bmp2.SetSize(1,1);
    SetRect(R,0,0,1,1);
  • Forum: Multimedia

    AW: Durchschnittsfarbe eines Bitmap "schnell" ermitteln

      Delphi
      by Amateurprofi, 11. Mai 2021
    Oh, das ist mir jetzt aber peinlich.
    In der Funktion GetAvgColor(Dsn:String):TColor; steht in der vorletzten Zeile
    GetAvgColor(Bmp);

    Ändere das bitte in
    Result:=GetAvgColor(Bmp);

    Hintergrund ist, dass ich ursprünglich die Funktion GetAvgColor(Bmp:TBitmap):TColor; hatte, also die, mit einer Bitmap als Parameter.
    Die Funktion mit dem Dateinamen als Parameter habe ich später hinzugefügt,...
  • Forum: Multimedia

    AW: Durchschnittsfarbe eines Bitmap "schnell" ermitteln

      Delphi
      by Amateurprofi, 11. Mai 2021
    Hallo KodeZwerg:
    Ich hab dir mal etwas zusammengestoppelt.
    Aufruf mit GetAvgColor(Dateiname) oder GetAvgColor(Bitmap)
    Mit TestGetAvgColor; hab ich das Ergebnis und die Performance getestet und mit der Funktion aus #3 verglichen.
    Die zurückgegebenen Durchschnittsfarben sind identisch, die Ausführungszeiten sind dagegen höchst unterschiedlich.

    FUNCTION AvgColor(P,LO,W,H:NativeInt):TColor;...


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=Amateurprofi&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=207856
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz