Einzelnen Beitrag anzeigen

Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#17

AW: RGB Werte von Bilder mit Farbtiefe mehr als 8bit (z.B.16bit, 32bit) abfragen

  Alt 18. Feb 2011, 23:54
@Aphton:
zunächst mal vielen Dank für deinen Quellcode. Wie im Anfangsbeitrag schon erwähnt sind mir auch Befehle wie z.B. scanline nicht ganz fremd. Das Problem liegt jedoch darin, dass es unter Delphi und mit Windows GDI Api nicht ganz trivial ist, direkt an die RGB Werte z.B. in 16bit-Ausführung (pro Farbkanal, sprich 16bitRed+16bitGreen+16bitBlue => 48bit) zu kommen.
Die Aussagen von Medium und Bummi decken sich mit meinen bisherigen Nachforschungen. Es scheinen die Windows Standard GDI-Funktionen und auch Delphi nur bis zu 8bit pro RGB-Farbkanal zurückzugeben. Das bedeutet für mich, dass ich mich wirklich mit einer zusätzlichen Grafikbibliothek auseinandersetzen muß, wenn ich die Werte auslesen möchte. Achja, so wie ich es verstanden habe ist scanline eher was Borland spezifisches. Wenn man die C-Sourcen von anderen Herstellern durchgeht ist selten scanline zu finden. Trotzdem finde ich scanline genial. Da muß man sich nicht um dem Alignment am Ende einer Pixelzeile kümmern.

Lg,
jus
Ohh verstehe; es ging dir eigentlich nicht um das Auslesen sondern ums Interpretiern bzw. Anzeigen eines 16 Bit Farbchannels.
Ich hab eigentlich auch spontan keine Ahnung, wie das ginge, aber, falls das nicht problematisch ist, könntest du die Werte ja runtermappen auf 8 Bit und so anzeigen - falls dir die Werte nur für eine Berechnung wichtig sind!
Und das runtermappen ginge ja so:
( Wert / Max16BitWert ) * Max8BitWert = ( 3000 / 65536 ) * 256 ~ 11 (4.5 % von 256)
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (18. Feb 2011 um 23:57 Uhr)
  Mit Zitat antworten Zitat