Strona 4 z 8 PierwszyPierwszy ... 23456 ... OstatniOstatni
Pokaż wyniki od 31 do 40 z 72

Wątek: #22 Liniowość matrycy i co z tego wynika

Mieszany widok

  1. #1
    Pełne uzależnienie Awatar ewg
    Dołączył
    Sep 2006
    Posty
    1 079

    Domyślnie

    I tu dochodzimy do relatywizmu (nie-)linowości widzenia - czytaj: do przepaści. :-)

    Jeśli ktoś jest nastawiony bardziej antropocentrycznie, równie dobrze może stwierdzić, że to oko widzi liniowo a jakaś tam matryca cyfrowa "krzywo" (tylko ta krzywa jest wtedy pod prostą a nie nad - choć to też jest względne). Jednak współzależność krzywa/prosta (obojętne co jest na krzywej a co na prostej) pozostaje taka a nie inna. Przetwornik cyfrowo analogowy z matrycy daje większą gęstość danych dla świateł a oko/mózg wymaga odpowiednio większej dla cieni (i to też wyłącznie z ludzkiego punktu widzenia!) i na jakimś etapie musi zajść tłumaczenie - jeśli nie na etapie przetwornika analogowo-cyfrowego, to np. RAW-JPEG. Dopóki cyfrówki a zwłaszcza RAWy nie zagrażały globalnej sielance pt. JPEG 8-bitowy, to mało kto nawet wiedział, że zachodzi jakieś tłumaczenie bitów - cyfrowych na ludzkie.

    A wiec, tak! - Antropocentrycznie malarz kopiuje własne płótna zdecydowanie liniowo, tylko przy oczywistym założeniu, że w takim rozumieniu/postrzeganiu "liniowości" również namalował swój pierwszy obraz no i że światło otaczające się nie zmieniało, albo nie padał gostek z wycieńczenia... ;-)
    mój aparat: [Ô] , szkła: OOO , statyw: /i\ , fotki: \\\-:\

  2. #2
    Pełne uzależnienie
    Dołączył
    Jul 2004
    Miasto
    Staszów
    Wiek
    52
    Posty
    1 709

    Domyślnie

    Cytat Zamieszczone przez ewg Zobacz posta
    Przetwornik cyfrowo analogowy z matrycy daje większą gęstość danych dla świateł [...]
    Daje tyle samo w światłach co cieniach - jest liniowy (tak z grubsza).

    Cytat Zamieszczone przez ewg Zobacz posta
    a oko/mózg wymaga odpowiednio większej dla cieni (i to też wyłącznie z ludzkiego punktu widzenia!) i na jakimś etapie musi zajść tłumaczenie - jeśli nie na etapie przetwornika analogowo-cyfrowego, to np. RAW-JPEG. Dopóki cyfrówki a zwłaszcza RAWy nie zagrażały globalnej sielance pt. JPEG 8-bitowy, to mało kto nawet wiedział, że zachodzi jakieś tłumaczenie bitów - cyfrowych na ludzkie.
    Spytam jeszcze raz: po co to niby tłumaczenie/traktowanie JPG krzywą logarytmiczną?

    Jeszcze raz może wyjaśnię

    Zróbmy następujące założenie. Nasze ludzkie widzenie (y1) niech będzie opisane funkcją y1=x^(1/2), gdzie x niech przybiera wartości od 0 do 1.


    Niech matryca (y2) rejestruje liniowo y2 = x gdzie x niech przybiera również wartości od 0 do 1 (niech tak będzie wyskalowana):


    Monitor+PC również wyświetla liniowo (y3=x).

    Następnie wyobraźmy sobie taki przykład. Niech naszym "krajobrazem" będą 3 prostokąty ustawione przy sobie:
    - czarny (x=0),
    - szary (50% szarości, x=0,5),
    - biały (x=1).

    Nasze oczy zobaczą tak:
    - czarny y1 = 0,
    - szary 50% y1 = x^(1/2) = 0,7,
    - biały y1 = 1.

    Załóżmy że dobraliśmy idealne ekspozycje. Nasz aparat zarejestrował "krajobraz" następująco:
    - czarny y2 = 0,
    - szary 50% y2 = 0,5,
    - biały y2 = 1.

    Teraz bez żadnych przekształceń nieliniowych wyświetlamy JPG na komputerze. Monitor + PC pokaże tak:
    - czarny y3 = 0,
    - szary 50% y3 = 0,5,
    - biały y3 = 1.

    Teraz jak nasze oczy to zobaczą? Tak jak w rzeczywistości czyli:
    - czarny y1 = y3^(1/2) = 0,
    - szary 50% y1 = y3^(1/2) = 0.7,
    - biały y1 = 1.

    Czyli zachowaną mamy wierność.

    Teraz co jest proponowane w tym wątku (nie przeze mnie ). Aby JPG potraktowany był krzywą y4 = x^(1/2). Ostatecznie na monitorze JPG będzie wyglądał nieliniowo w stosunku do rzeczywistości tj. szary 50% wyświetlony na monitorze będzie miał wartość 0,7 (a nie 0,5). Jako, że nasze widzenie jest z naszego założenia y1=x^(1/2) ostatecznie odbierzemy takiego JPG tak:

    ostatecznie = y4 x y1 = x^(1/2) * x^(1/2) = x^(1/4)


    Nasza rzeczywista szarość 50% będzie miała wartość 0,84.

    Teraz pytanie.
    Czy zależy nam na wierności, czy jakimś pseudo HDR który podbija sztucznie cienie?
    Ostatnio edytowane przez Tomasz Urbanowicz ; 05-11-2007 o 10:51

  3. #3
    Pełne uzależnienie Awatar ewg
    Dołączył
    Sep 2006
    Posty
    1 079

    Domyślnie

    Cytat Zamieszczone przez ewg
    Przetwornik cyfrowo analogowy z matrycy daje większą gęstość danych dla świateł [...]
    Cytat Zamieszczone przez Tomasz Urbanowicz Zobacz posta
    Daje tyle samo w światłach co cieniach - jest liniowy (tak z grubsza).
    Cytat Zamieszczone przez ewg
    (i to też wyłącznie z ludzkiego punktu widzenia!)
    - Skomentowałeś fragment zdania odzielony od kluczowego dlań nawiasu. ;-) No i myślę, że (o ironio!) właśnie tutaj jest pies pogrzebany:

    Z ludzkiego punktu widzenia matryca cyfrowa nie jest liniowa (nawet z grubsza). Dlatego też po wcześniejszym "tłumaczeniu", już na poziomie międzymordzia (interfejsu ;-)) graficznego użytkownika (czyli monitora) nie mnożą sią już dwie krzywe tylko właśnie dwie proste!, z czego powstaje kolejna identyczna prosta (mnożenie przez 1).

    Przyznaję, że wywód Kolegi można chyba zaliczyć do jednych z lepszych filozoficznie twierdzeń absurdu - Dlatego - moje uznanie! Jeśli to było kontrolowane i zamierzone - tym bardziej! ;-)

    Swoją drogą (kolejna ironia przypadku?) tzw. "18% szarość Kodaka", której w komputerze ponoć odpowiada 50% świetnie pasowałaby do Twojego ostatniego wykresu (tam gdzie 50%=0,84, a 18%=0,5 ;-)). - To tylko takie luźne spostrzeżenie na podstawie wykresu - nie liczb. Teoretycznie, chyba powinno to pasować do wykresu wcześniejszego, gdzie logarytmy się jeszcze nie nałożyły, ale trzeba jeszcze brać poprawkę na właściwości farb i papierów drukarskich, bo to zdaje się teoria szarości jeszcze z czasów czysto analogowego druku offsetowego. Nie bez kozery o tym wspominam bo te "18%" to chyba rzecz nie bez związku dla omawianej w tym wątku teorii widzenia?

    Co tu dużo gadać, chyba wszyscy czekamy tu już na wypowiedź wielokrotnie przywoływanego, wielkiego Nieobecnego, czyli na odświeżający powiew pragmatyzmu.
    mój aparat: [Ô] , szkła: OOO , statyw: /i\ , fotki: \\\-:\

  4. #4
    Pełne uzależnienie
    Dołączył
    Jul 2004
    Miasto
    Staszów
    Wiek
    52
    Posty
    1 709

    Domyślnie

    Cytat Zamieszczone przez ewg Zobacz posta
    Z ludzkiego punktu widzenia matryca cyfrowa nie jest liniowa (nawet z grubsza). Dlatego też po wcześniejszym "tłumaczeniu", już na poziomie międzymordzia (interfejsu ;-)) graficznego użytkownika (czyli monitora) nie mnożą sią już dwie krzywe tylko właśnie dwie proste!, z czego powstaje kolejna identyczna prosta (mnożenie przez 1).
    Ale mnie nie interesuje punkt widzenia człowieka liniowości matrycy
    O dwóch prostych przecież cały czas piszę - prosta z matrycy i prosta z monitora. Patrzymy na obraz "liniowy" w monitorze (zakładam że JPG nie potraktowany jest żadną nieliniowością) i widzimy poprzez ludzkie widzenie (np. z założenia jakie napisałem y=x^(1/2)) tak jak patrząc na otaczającą nas rzeczywistość.

    Logiczność jest jedna: wynikowe przekształcenie aby zapewnić wierność odwzorowania musi być liniowe - nie ma innej możliwości. Takiego wynikowego liniowego przekształcenia nie ma przy potraktowaniu JPG z RAW nieliniowością.

    Cytat Zamieszczone przez ewg Zobacz posta
    Przyznaję, że wywód Kolegi można chyba zaliczyć do jednych z lepszych filozoficznie twierdzeń absurdu - Dlatego - moje uznanie! Jeśli to było kontrolowane i zamierzone - tym bardziej! ;-)
    Nie wiem czy mam to traktować jako komplement czy obrazę? ;-)

  5. #5
    Adaminio
    Guest

    Domyślnie

    Tomku... ale o co chodzi?

    Piszesz, że Janusz napisał że do przekształceń z RAW na JPG oprogramowanie stosuje pewną funkcję 'gamma' o jakimś wykładniku. Pytasz poco jest ta funckja. Ale przecież to nie tak. Gamma to funckja interpretacji danych z matrycy w ogóle. Wszystko jest przecedzone przez gammę, RAW też do póki nie włączysz opcję liniowo w sofcie na komputerze, (canonowski soft ma tę funkcję).

    Panowie, rozumiem wykresy liniowe czy nie liniowe dla matryc, gdzie na jednej osi zaznaczone jest wejście na drugiej wyjście. Ale Tomku, co znaczy x i y dla twoich wykresów widzenia oka? Nie potrafię podstawić tam żadnych wartości. Jak je rozumiesz?

  6. #6
    Pełne uzależnienie
    Dołączył
    Jul 2004
    Miasto
    Staszów
    Wiek
    52
    Posty
    1 709

    Domyślnie

    Cytat Zamieszczone przez Adaminio Zobacz posta
    Tomku... ale o co chodzi?

    Piszesz, że Janusz napisał że do przekształceń z RAW na JPG oprogramowanie stosuje pewną funkcję 'gamma' o jakimś wykładniku. Pytasz poco jest ta funckja. Ale przecież to nie tak. Gamma to funckja interpretacji danych z matrycy w ogóle. Wszystko jest przecedzone przez gammę, RAW też do póki nie włączysz opcję liniowo w sofcie na komputerze, (canonowski soft ma tę funkcję).
    Tak, tylko gamma=1 to funkcja liniowa. Tutaj wyraźnie JPG jest przekształcany za pomocą gammy=2.2.

    Cytat Zamieszczone przez Adaminio Zobacz posta
    Panowie, rozumiem wykresy liniowe czy nie liniowe dla matryc, gdzie na jednej osi zaznaczone jest wejście na drugiej wyjście. Ale Tomku, co znaczy x i y dla twoich wykresów widzenia oka? Nie potrafię podstawić tam żadnych wartości. Jak je rozumiesz?
    x to wartość luminancji rzeczywistej, y to jak człowiek to odbiera.
    Na moim wykresie jest to uproszczone i wyskalowane od 0-1.

  7. #7
    Pełne uzależnienie
    Dołączył
    Jul 2004
    Miasto
    Staszów
    Wiek
    52
    Posty
    1 709

    Domyślnie

    Według mnie, przekształcenie z RAW do JPG/TIFF jest liniowe. To całe zamieszanie z gammami ma związek z gammą systemu. Jak już wcześniej pisałem, aby zlinearyzować wyświetlany obraz na monitorze, system musi nadawać na gammę odwrotną do krzywej monitora - to zapewnia kalibracja i mamy liniowość.
    Tak, czy siak, IMO nie występuje w samym konwerterze domyślnie żadne przekształcenie nieliniowe.
    Weźmy taki oto przykład (dziękuję Jackowi Kardasiewiczowi za podsunięcie pomysłu ). Robimy byle jakie zdjęcie w JPG prawidłowo dobierając ekspozycje. Następnie wrzucamy na komputer i wyświetlamy na skalibrowanym monitorze. Następnie drukujemy zdjęcie (drukarka oprofilowana), lub wywołujemy w skalibrowanym labie. Robimy kolejne zdjęcie wywołanej fotki i znów wrzucamy na kompa (dobieramy balans bieli itp, nie ruszając gammy). Znów drukujemy i znów robimy zdjęcie wydrukowanemu zdjęciu i tak kilka razy. Zgodnie z teorią o traktowaniu JPG jakąś krzywą każde kolejne zdjęcie powinno być jaśniejsze - a tak nie jest.
    Wykonałem taki test - wywołałem zdjęcie w skalibrowanym labie i zrobiłem temu zdjęciu zdjęcie (JPG). Wyświetliłem na monitorze - dobrałem balans bieli jedynie. Zdjęcie było praktycznie takie samo jak oryginał...
    Robione są przecież np. kopie obrazów - nie zależy nam na rozciągnięciu cieni, a na wierności z oryginałem...

  8. #8
    Pełne uzależnienie Awatar minek
    Dołączył
    Jan 2005
    Miasto
    Łódź
    Wiek
    47
    Posty
    1 386

    Domyślnie

    Cytat Zamieszczone przez Tomasz Urbanowicz Zobacz posta
    Według mnie, przekształcenie z RAW do JPG/TIFF jest liniowe.
    Nie jest liniowe.
    To całe zamieszanie z gammami ma związek z gammą systemu.
    Gamma systemu to zupełnie inna sprawa, system wyświetla nie tylko jpegi zrobione z rawów, ale też okienka, literki, gierki, filmy i inne mniej lub bardziej potrzebne rzeczy.
    Tak, czy siak, IMO nie występuje w samym konwerterze domyślnie żadne przekształcenie nieliniowe.
    Występuje. To sporo komplikuje, owszem, zwłaszcza przy aplikowaniu innych przekształceń, które zazwyczaj są liniowe.
    W tanich aparatach, które od razu wypluwają jpegi - to przekształcenie nie zawsze nawet przypomina funkcję wykładniczą, zależnie od sensora (lichy sensor - większa nieliniowość nieliniowości, o)
    (...) Zgodnie z teorią o traktowaniu JPG jakąś krzywą każde kolejne zdjęcie powinno być jaśniejsze - a tak nie jest.
    Podczas odczytu RAW należy zastosować przekształcenie podobne do gammy, właśnie po to, by ten jpeg wyglądał tak jak ten który widzisz. Bo to matryca widziała go nieco inaczej i w taki sposób zapisana została pobrana z niej informacja.
    W dodatku o ile się nie mylę, nie mamy za dużego wpływu na tą konwersję, to jest ustawione w programach dla każdego sensora inaczej. Przynajmniej w ACR tego nie znalazłem. UFraw chyba domyślnie ustawia liniowo, tam widać, że trzeba sobie tą krzywą podnieść.

  9. #9
    Bywalec Awatar piotrgr
    Dołączył
    Mar 2005
    Miasto
    Elbląg
    Wiek
    60
    Posty
    164

    Domyślnie

    Myśle , że mozna by bylo w odwrotny sposób przeprowadzać konwersję A/D czyli dla sygnału 0 - czerń dać max bitów a dla bieli odwrotnie i wrócilibysmy mniej wiecej do tego co było w analogu czyli naswietlanie do lewej a nie do prawej histogramu.
    __________________
    30D 8) + KIT, EF 28/2.8, EF 50/1.8, S APO SMII 70-300/4-5.6, 420 EX, Sherpa 250R i RUP-43

  10. #10
    Pełne uzależnienie
    Dołączył
    Oct 2006
    Miasto
    Kraków/Szczecin
    Wiek
    45
    Posty
    1 641

    Domyślnie

    Cytat Zamieszczone przez piotrgr Zobacz posta
    Myśle , że mozna by bylo w odwrotny sposób przeprowadzać konwersję A/D czyli dla sygnału 0 - czerń dać max bitów a dla bieli odwrotnie i wrócilibysmy mniej wiecej do tego co było w analogu czyli naswietlanie do lewej a nie do prawej histogramu.
    Chyba byłby to podobny problem co konwersja nieliniowo (logarytmicznie) - trudno byłoby zrobić mały, dobrze działający i tani element, który tę operację wykona...
    Fotograf platoniczny

Strona 4 z 8 PierwszyPierwszy ... 23456 ... OstatniOstatni

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •