Skocz do zawartości

Korekcja gamma dla taśm LED


SOYER

Pomocna odpowiedź

Cześć, problem jak w temacie. Organoleptycznie sprawdzając zwykłe ++ dla taśm led od 0 do 255 powoduje, że widzimy gwałtowne zmiany przy niskich wartościach, a niezauważalne przy wyższych.

Jak to programowo ogarnąć by zrozumieć problem i oszukać oko. Nie chcę używać biblioteki, chcę to zrozumieć i posmakować.

  • Lubię! 1
Link do komentarza
Share on other sites

(edytowany)

Dla małych mikrokontrolerów(tj: z małą ilością pamięci) generuje się tablice korekcyjne, taka tablica ma z góry określony rozmiar przez co diody steruje się krokami na przykład tablica ma zapisane 64 wartości PWM i wtedy nie generujesz sygnału 0...255 a wybierasz jedną z wartości w tablicy. Dla układów o większej pojemności zapewne są dostępne algorytmy które przeliczają wybraną barwę na bieżąco. 

Tu przykład takiego generatora https://victornpb.github.io/gamma-table-generator/

Edytowano przez _LM_
  • Lubię! 2
Link do komentarza
Share on other sites

No dobra ale jak to zrobić, tak jak pisze @_LM_ wywoływać tablicę, czy no. od 0 do 30 skok o 1 potem do 90 skok o 2, do 128 skok o 3, a później do 255 skok o 6. 
Jak to napisać?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Ok, będę kombinował.

Inne pytanie, tutaj rośniemy do 255, a i w generatorze i w przykładach różnych bibliotek widzę dużo wyższe wartości maksymalne zależne od rozdzielczości (?) pwm, 8bit, 12bit(?).

O co chodzi? Jak to ustawić w esp32? Wtedy fading jest płynniejszy?

Link do komentarza
Share on other sites

10 minut temu, SOYER napisał:

maksymalne zależne od rozdzielczości (?) pwm, 8bit, 12bit(?)

Dokładnie tak jest, przecież jeśli masz PWM 8 bit to nie uda Ci się załadować tam większej wartości, tak samo dla popularnych diod ws2812 - ich max to właśnie 255 czyli 8bitów. 

12 minut temu, SOYER napisał:

O co chodzi? Jak to ustawić w esp32?

tu musisz doprecyzować pytanie bo nie bardzo wiem jak się odnieść 

Link do komentarza
Share on other sites

(edytowany)
3 godziny temu, SOYER napisał:

Jak to napisać?

To nie jest tak że "skok co ileś" tylko każdy stopień jest X razy jaśniejszy od poprzedniego. Np. różnica między 1 a dwa jest taka sama jak między 128 a 255 (no, prawie).

Spróbuj zapuścić taki programik w pythonie:

#!/usr/bin/env python3

n=63    # ilość kroków ogólnie minus 1
q=8     # ilość kroków na podwojenie jasności
for i in range(n):
    p=255 * (2**(i/q) /(2**((n-1)/q)))
    print ("%02d: %3.2f" % (i+1,p))

Dostaniesz w wyniku współczynniki wypełnienia 8-bitowego PWM... niestety, jako floaty które przynajmniej w początkowym zakresie niespecjalnie dadzą się przełożyć na inty.  Ale przynajmniej będziesz wiedział, jakie wartości powinny znaleźć się w tablicy. Poeksperymentuj jeszcze z wartością q (nie musi być całkowita)...

I dopiero do tego można zastosować korekcję gamma.

A jakbyś płakał że osiem bitów to mało... spójrz przed siebie: Twój monitor ma właśnie 8 bitów na kolor...

Edytowano przez ethanak
  • Lubię! 1
Link do komentarza
Share on other sites

8 godzin temu, ethanak napisał:

Twój monitor ma właśnie 8 bitów na kolor...

Żeby jeszcze miał 8 bitów, to dobrze. Pewnie będzie miał 6 i przełączał między wyższym a niższym kolorem, żeby uzyskać ten pośredni nieobsługiwany.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.