Hellichkeit von Pixel ermitteln
Übersicht

FWeinbehemals "ich"Betreff: Hellichkeit von Pixel ermitteln |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo ich bin auch mal wieder bei BB gelandet und wolte wissen wie es geht
die helleichkeit eines Pixels zu bestimmen also so das ich weis weilche hellichkeit er hatt Danke im vorraus ICH |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Helligkeit???
Wenn du die Einzelnen Farbwerte (Rot, Grün, Blau) meinst, benutze diese Befehle: ql:getcolor, ql:colorred,ql:colorgreen, ql:colorblue oder diese (ist schneller aber komplizierter): ql:lockbuffer, ql:readpixelfast |
||
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du addierst R-ot G-rün und B-lau Wert eines Pixels. Und ermittelst dann den Mittelwert. Wenn Du diesen Wert auf R,G und B gleichmässig verteilst, kannst Du den Pixel mit der selben Helligkeit aber in grau anzeigen.
Edit: Ich täuschte mich, die Standard Konversion lautet: grau = 0.299 * R + 0.587 * G + 0.114 * B Ich hab es eben mal getestet: Code: [AUSKLAPPEN] Graphics 320,240,0,2
SetBuffer (BackBuffer()) r = 200 g = 100 b = 10 grau = 0.299 * r + 0.587 * g + 0.114 * b While Not KeyHit(1) Color (r,g,b) Rect 10,10,30,30,1 Color (grau,grau,grau) Rect 50,10,30,30,1 Flip:Cls Wend |
||
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja danke ich habs jetzt so weit verstanden also kann man eigenntlich mehrere
Pixel nehemn also ein Pixelbrecht eine Hellichkeit zuweisen Danke für antworten mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
@DerHase, bist du dir sicher, dass Grün am stärksten aufgehellt werden muß? Grün ist doch schon die 'hellste' Farbe am Bildschirm. | ||
AvaGast |
![]() Antworten mit Zitat |
|
---|---|---|
hectic hat Folgendes geschrieben: @DerHase, bist du dir sicher, dass Grün am stärksten aufgehellt werden muß? Grün ist doch schon die 'hellste' Farbe am Bildschirm.
Genau deshalb muss sie ja zur Bestimmung der Helligkeit am meisten gewichtet werden. ![]() |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Achja, stimmt Ava! Denkfehler... | ||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
DerHase hat Folgendes geschrieben: Du addierst R-ot G-rün und B-lau Wert eines Pixels. Und ermittelst dann den Mittelwert. Wenn Du diesen Wert auf R,G und B gleichmässig verteilst, kannst Du den Pixel mit der selben Helligkeit aber in grau anzeigen.
Edit: Ich täuschte mich, die Standard Konversion lautet: grau = 0.299 * R + 0.587 * G + 0.114 * B Ich hab es eben mal getestet: Code: [AUSKLAPPEN] Graphics 320,240,0,2
SetBuffer (BackBuffer()) r = 200 g = 100 b = 10 grau = 0.299 * r + 0.587 * g + 0.114 * b While Not KeyHit(1) Color (r,g,b) Rect 10,10,30,30,1 Color (grau,grau,grau) Rect 50,10,30,30,1 Flip:Cls Wend darf man vorsichtig fragen, woher die formel stammt? |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
@StepTiger: Hier steht´s z.B. aber ich hab es auch mittlerweile in meinem Lehrbuch gefunden, ich erinnerte mich grade dran nachdem ich die erste Version gepostet hatte. Die Formel ist glaub ich nur für Röhrenmonitore ganz richtig.
Ah, hier steht auch noch was drüber. |
||
Play Satyr! |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da steht aber nicht, dass das DIE richtige Methode ist.
Luminanz ist nur ein vollkommen anderes Verfahren als Durchschnittsfarbe So wie heightmap und vertexmap. Machen ähnliche Sachen, haben die gleiche Funktion (als Bumbmap) aber wirken anders. Ich persönlich finde Luminanz schöner ^^ |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Naja, so gesehen gibt es keine Richtige Methode, die beschriebene Methode gilt nur für einen idealen Röhren Monitor, den es so nicht gibt.
Bei meinem Laptop (der ja keinen Röhrenmonitor hat) zum Beispiel sieht die Sache so aus, die grünen Farbtöne werden mit diesem Luma Ding besser umgerechnet, die blauen mit dem Durchschnitt. Also müsste ich rumexperementieren, welches bei mir die richtigen Faktoren sind, bei dem Durchscnitt ist er einfach jeweils 0.333 . Das Problem ist halt nur das jeder nen anderen Bildschirm hat, nen anderen Geschmack so weiter und so fort ![]() Eine Methode dies zu lösen wäre im Menü etwas einzubauen, wo jeder für die 3 Graundfarben die jeweils passende Helligkeit für sich einstellt. Sowas ähnliches gab es ja mal bei dem Spiel Abuse. Dies ist mittlerweile Freeware und auch die neueren Betriebsysteme kompiliert worden. Da lohnt sich immer nen Blick drauf. Aber ich schweiff ab, das Thema ist halt schön ![]() |
||
Play Satyr! |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group