![]() |
Vollständigkeit eines tImage errechnen
Hallo,
wie kann ich am einfachsten ausrechnen wie viel Prozent eines tImage "bemalt" sind. Also z.B. ich hab ein 200x200 Pixel tImage auf dem gemalt werden kann. Jetzt will ich herausfinden wie viele Pixel von den 40.000 Pixel bemalt wurden. Mir fällt nichts ein, außer jedes Pixel einzeln auf clBlack zu überprüfen(?) Danke |
Re: Vollständigkeit eines tImage errechnen
im Prinzip ist das genau so richtig
es heißt ja schließlich Anzahl der bemalten Pixel * 100 / Anzahl aller Pixel = bemalt in Prozent nur sollte man nicht unbedingt .Pixels zum Auslesen verwenden, sondern eher über die schnelleren .Scanline's gehn |
Re: Vollständigkeit eines tImage errechnen
Scanlines hört sich vielversprechend an :)
Danke. Ich dachte vielleicht hat da Delphi gleich eine Funktion intrigiert die genau das macht. |
Re: Vollständigkeit eines tImage errechnen
Ich finde über Scanline irgendwie nichts das mir weiterhilft.
Ich hab hier ein tImage auf dem per Image1.Canvas.Pixels[] einzelne Pixel verändert werden. Wie bearbeite ich das Image jetzt mit Scanline? |
Re: Vollständigkeit eines tImage errechnen
mit .Scanline greifst du direkt auf den Speicher einer Bildzeile zu
(von unten nach oben im Bild und die Zeilen von links nach rechts) Dabei sind die Daten aber im Speicherformat also 24 Bit = 3 Byte pro Pixel also 32 Bit = 4 Byte pro Pixel 8 Bit aka 256 Farben = 1 Byte pro Pixel 4 Bit aka 16 Farben = 2 Pixel pro Byte usw. ![]() |
Re: Vollständigkeit eines tImage errechnen
Die Sourcecodes hab ich mir alle angekuckt, aber ich versteh das mit dem TBitmap nicht.
Ich hab ja ein TImage. |
Re: Vollständigkeit eines tImage errechnen
Hast du vorher ein Bild da reingeladen?
Wenn nicht, dann wird automatisch ein Bitmap erstellt. Image.Picture.Bitmap |
Re: Vollständigkeit eines tImage errechnen
Wieder einen Schritt weiter^^
Leider weiß ich nicht so Recht etwas damit anzufangen. Image1.Picture.Bitmap.ScanLine[1]; Das müsste ja die 1. Reihe scannen. Aber was bringt mir der Pointer als Rückgabe? Also wie kann ich dann ermitteln wieviel mal ClBlack darin vorkommt(in der 1. Reihe). |
Re: Vollständigkeit eines tImage errechnen
Zitat:
Oder kann sich das Image auch "von aussen" ändern - willst du also auch ein fertiges Image laden und dort die schon veränderten Pixel zählen (dann vergiss meinen Vorschlag) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:26 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