PDA

Zobacz pełną wersję : Jak zmierzyć temperaturę barwową?



Zink
24-01-2008, 18:20
Mam taki problem: potrzebuję domowym sposobem zmierzyć temperaturę barwową światła z latarki. Do dyspozycji mam: Aparat (D50), GIMP z pluginem UFRAW... i w zasadzie tyle. Nie mam niestety dostępu do żadnych urządzeń kolorymetrycznych, ale dokładność pomiaru nie musi być duża. W zupełności wystarczy dokładność rzędu 500K.

Wykombinowałem sobie następującą metodologię, ale że nie bardzo się znam na balansach bieli, to nie bardzo wiem czy takie coś w ogóle ma sens. Dlatego chciałbym prosić tych, którzy się orientują lepiej o wskazówki:
1. Robię zdjęcie w RAW-ie świecąc lampką w obiektyw z takimi ustawieniami, żeby zdjęcie wyszło nieprześwietlone.
2. Otwieram RAW-a w gimpie pluginem UFRAW.
3. W pluginie wybieram ręczny balans bieli, zaznaczam punkt zdjęcia, w którym chcę zmierzyć balans - plugin dobiera mi automatycznie balans tak, żeby zaznaczony punkt był neutralnie biały.
4. Odczytuję wartość dobranego balansu bieli i to jest temperatura światła w kelwinach.

Gdyby jednak powyższa metoda nie miała sensu, to mogę jeszcze zrobić tak:
(punkty 1 i 2 jak wyżej)
3a. W pluginie wybieram ręczny balans bieli i ustawiam wszystkie mnożniki kanałów na 1,000. Zamykam plugin, zdjęcie wędruje mi do GIMP-a.
4a. Mam zdjęcie teoretycznie bez żadnej korekcji balansu bieli (o ile matryca nie wprowadza przekłamań, ale nie powinno to mieć dużego wpływu). I teraz... no właśnie - co mogę z tym dalej zrobić, żeby dostać temperaturę bieli?

Seeth
24-01-2008, 18:45
A nie lepiej poświecić tym światłem na białą kartkę? wtedy tylko w programie ustawiasz tak balans aby kartka była biała na zdjęciu i wtedy powinieneś otrzymać prawidłową temperaturę barwową.

Pozdrawiam

Czornyj
24-01-2008, 18:56
Mz. najbliższą prawdy temperaturę barwową odczytasz fotografując coś neutralnie szarego/białego i odczytując uzyskaną temperaturę barwową, bez wprowadzania jakiejkolwiek korekty.

Zink
24-01-2008, 21:53
Seeth, to przecież to samo, co zaświecenie latarką bezpośrednio w obiektyw (jednak twoja metoda jest lepsza, bo zrobiłem kilka zdjęć i przy świeceniu bezpośrednim dostaję przepał nawet na największej przysłonie i najkrótszym czasie).

Czornyj, odczytując temperaturę... skąd? W GIMPie nie znalazłem takiej funkcji.

Sprawdziłem pierwszą metodę, o której pisałem - sfotografowałem monitor ustawiony na 6500K wyświetlający biały kolor, i automat w UFRAWie dobrał mi balans na mniej więcej 6500K, więc wygląda na to, że metoda jest dobra, ale chciałbym mieć pewność.

Czornyj
24-01-2008, 22:13
Temperatura jest gdzieś zaszyta w metadanych pliku, tylko zonk polega na tym, że nie wiem jak ją odczytać (oczywiście pominąwszy użycie ACR i tym podobnych konwerterów).

Dla 6500K sytuacja jest deczko insza, bo biel 6500K ma stosunkowo płaską charakterystykę spektralną (dość równomierny rozkład fal o różnych częstotliwościach), co tak czy owak daje neutralne rezultaty. Natomiast - dajmy na to - biel o niskiej temperaturze (np. światła żarowego) ma spektrum z przewagą fal długich, co musi dać rezultaty ocieplone i dokonując kompensacji chyba zafałszujesz sobie pomiar.

Jacek_Z
25-01-2008, 01:21
1. prawdopodobnie światło jest tak żółte, że jest poza zakresem ustawiania WB PRE w body. No chyba, że to jakas latarka diodowa, halogenowa albo ine cudo.
2. tolerancja 500 K przy niskiej temp barwowej to bardzo, bardzo, bardzo dużo.
3. prawidłowo temp barwowa odczytuje tylko NC i NX, reszta softu - kłamie, włącznie z PS CS.
4. zrób zdjęcie białej kartki oswiatlonej tą latarka i sprawdź w NC ile to kelwinów. Możesz ściagnąc triala ze strony.
5. jeśli to latarka na żarówkę (i nowa bateria :-D) to obstawiam cos ponad 2 tys K

ekonet
25-01-2008, 01:32
3. prawidłowo temp barwowa odczytuje tylko NC i NX
Możesz podpowiedzieć, w którym dokładnie narzędziu? Mam oba programy.

Czornyj
25-01-2008, 09:34
1. prawdopodobnie światło jest tak żółte, że jest poza zakresem ustawiania WB PRE w body. No chyba, że to jakas latarka diodowa, halogenowa albo ine cudo.
2. tolerancja 500 K przy niskiej temp barwowej to bardzo, bardzo, bardzo dużo.
3. prawidłowo temp barwowa odczytuje tylko NC i NX, reszta softu - kłamie, włącznie z PS CS.
4. zrób zdjęcie białej kartki oswiatlonej tą latarka i sprawdź w NC ile to kelwinów. Możesz ściagnąc triala ze strony.
5. jeśli to latarka na żarówkę (i nowa bateria :-D) to obstawiam cos ponad 2 tys K

Nie jest to kwestia różnicy w zakresie, tylko kwestia tego, że mamy AWB w głowie. Światło żarowe wydaje nam się żółte, ale tak naprawdę jest raczej oranżowe, świetlówka dla odmiany jest zielonkawa itd.
Każdy konwerter odczytuje prawidłowo temperaturę barwową, ponieważ wartość ta jest zapisywana w metadanych pliku RAW - może co najwyżej wyciągać z tej informacji inne wnioski.

W NC faktycznie chyba nie da się tego odczytać, ściągnijcie triala C1 4, tam nie ma problemu

Jacek_Z
25-01-2008, 14:27
Każdy konwerter odczytuje prawidłowo temperaturę barwową,
otwórz ten sam plik raw z wiadomą ci temp barwową ustawioną w body na sztywno w K, zobacz ile K pokazuje PS a ile NC. NC pokazuje mi to samo co ustawiłem w body, PS - nie.

w NC - możesz sobie to odczytać niestety tylko metodą prób i błędów. Najniższa wartośc na jaką możesz zejść w NC mając ustawione na światło zarówek to 2610 K.
Pierw ustaw sobie prawidłowy balans bieli takiej kartki - przy pomocy punktu szarości (bieli) - ta pipetką. Zapamietaj :) jak to wygląda, a optem przejdź na żarowe i zrób to samo suwakiem. Jak będzie to samo - to odczytasz ile to K.

Czornyj
25-01-2008, 14:34
Zrobiłem powyżej cały wykład na ten temat i uważam, że jest to błędna metoda. Aparat zapisuje zmierzoną wartość WB i każdy konwerter ją sobie odczytuje, a co z tą wiedzą robi to już insza inszość. Neutralizowanie szarości pipetką może zafałszować pomiar, o czym pisałem wcześniej.

Jacek_Z
25-01-2008, 14:42
Aparat zapisuje zmierzoną wartość WB i każdy konwerter ją sobie odczytuje, a co z tą wiedzą robi to już insza inszość. .
co zrobić z wiedzą, że zdjęcia nocne które robiłem na 3200 K odczytał mi NC jako 3200 K a PS jako 3100 K? PS odczytał, że tak było nastawione w body! mimo, że to nie jest prawda. Konwertery sobie odczytują WB, ale poza NC źle wyświatlają ile to jest K. Nie można ich więc użyc do pomierzenia tej wartości przy fotografowaniu aparatami nikona.

milo_ja
25-01-2008, 15:35
1. prawdopodobnie światło jest tak żółte, że jest poza zakresem ustawiania WB PRE w body. No chyba, że to jakas latarka diodowa, halogenowa albo ine cudo.


Oj tam. Ja jestem w stanie przez WB PRE ustawić balans dla lamp sodowych, więc latarka tym bardziej nie powinna stanowić problemu dla puszki.

Zink
25-01-2008, 21:57
Zaraz, momencik, bo chyba czegoś tu nie rozumiem. Wartość balansu bieli w metadanych będzie wartością ustawioną w aparacie. Gdybym miał ręcznie ustawiany balans w aparacie i ustawiłbym go na 3000K, to w programie powinienem dostać 3000K niezależnie od tego, co sfotografowałem, mam rację? Bo chyba aparat nie zapisuje w metadanych zmierzonej temperatury barwowej sceny (a jeśli tak, to powinny tam być obie wartości, bo ta pierwsza się chyba jednak częściej przydaje). Jeśli jest tak jak mówię (w metadanych jest wartość ustawiona w aparacie), to mógłbym teoretycznie ustawić balans w trybie PRE na świetle z lampki, zrobić zdjęcie i odczytać z metadanych jaką wartość aparat dobrał. Jeśli o tym mówicie, to czym to się różni od metody, którą opisałem w pierwszym poście? Balans jest dobierany na podstawie tych samych danych (UFRAW ma tę przewagę, że mogę wybrać obszar, z którego zmierzy balans) i raczej w ten sam sposób. Przy UFRAWie odpada instalowanie innych programów, żeby tylko odczytać metadane.

Lampka jest diodowa, na oko 5000~7000K.

Jacek_Z
25-01-2008, 22:17
zakładasz, że np PS otworzy zdjęcie z taką temp barwową jaka jest napisana w exifie. A to nieprawda. Otwiera i podaje jakąś swoją wartość K. Nieprawdziwą. Podobnie jak i inne programy. Nie wiem czy wszystkie i czy we wszystkich przypadkach - nie sprawdzałem. Dobrze odczytują te wartośc tylko programy nikona. Pokazanie prawidłowe bieli i pokazanie ile to kelwinów - to w tych programach dwie rózne rzeczy.

powiedz lepiej do czego to potrzebujesz, bo może problem jest do obejścia zupełnie inaczej.

Zink
26-01-2008, 11:08
Niczego nie zakładam. Chciałem się tylko dowiedzieć, która z wartości jest faktycznie umieszczona w metadanych:
1. Zawsze nastawiona w aparacie.
2. Zawsze zmierzona z fotografowanej sceny.
3. Obie.

Dalej zakładając, że NC - jako firmowy program Nikona - potrafi ją właściwie odczytać i wyświetlić, dochodzę do następujących wniosków.
Jeśli na poprzednie pytanie odpowiedź brzmi:
1 - to według mnie metoda pomiaru niczym się nie będzie różniła od zaproponowanej w poście rozpoczynającym wątek.
2 - to faktycznie metoda ta byłaby lepsza (w każdym razie byłoby oczywiste, że powinna dać wynik zgodny z prawdą).

A generalnie chodzi mi o to, że w przypadku 1 nie ma sensu instalować triala NC, bo te same rezulataty osiągnę UFRAWem, a w przypadku 2 - jest sens. Tylko żebym dostał jakieś miarodajne wyniki, to muszę przed ewentualnym użyciem NC wiedzieć, który przypadek jest prawdziwy.

Raczej w niczym to nie pomoże, ale ok: mam lampkę diodową, w której chciałbym wymienić diodę na jasniejszą. Temperatura barwowa aktualnej diody jest akurat w sam raz, więc diodę na podmianę chciałbym dobrać o zbliżonej temperaturze (w katalogu sklepu mam podane temperatury diod w Kelwinach).

Jacek_Z
26-01-2008, 13:01
w exifie jest umieszczona warość nastawiona na aparacie - lub informacja, że jest to WB auto lub WB pre.
Fotografowana scena może mieć zupełnie inną prawidłową wartość niż ty nastawisz. Możesz sobie na body nastawić 5000 K, a zrobić zdjęcie czegoś co ma 3400 K. Prawidłowo temp barwowa będzie więc wynosiła 3400, w exifie będzie to co nastawiłeś w body - 5000K.
zdaje się, że nie chcesz przyjąć do wiadomości, że inne programy kłamią co do wartości w K. UFRAW prawie na pewno też. Nie wiem, nie uzywam. Możesz to łatwo sam sprawdzić, po co pytasz. Zrób zdjęcie (raw) na 6000 K (obojetnie co, to nie musi być prawidłowy balans bieli), otwórz tego RAWa w UFRAW i zobacz czy on pokazuje 6000 K. Nie w exifie, tylko w tym narzędziu do zmiany temp barwowej - o ile on w nim wyswietla K.

edit - D50 chyba nie ma ustawiania w K, zrób więc na błysk, zobacz w instrukcji body ile K to błysk.

Zink
26-01-2008, 14:46
Nie chodziło mi o tą metodę z UFRAW-em. Nie ma znaczenia, czy on odczyta z exifa prawidłową wartość, czy nie, i czy w ogóle ją odczyta. Moja metoda polega na tym, że zaznaczam fragment zdjęcia, klikam "zmierz balans" i UFRAW mierzy mi jaką trzeba ustawić wartość balansu, żeby zaznaczony obszar był neutralnie biały. Nie ma tu absolutnie znaczenia co zapisał aparat w EXIFie, bo nie ma to wpływu na wartości pikseli (mam nadzieję) w RAWie. Metoda ta działa na identycznej zasadzie z tą, którą ty proponujesz, z tą tylko różnicą, że w twojej wersji pomiaru dokonuje aparat - program tylko odczytuje wynik, a w mojej - pomiaru dokonuje program. Program nie może więc wyświetlać błędnej wartości z własnego pomiaru (no chyba, że autor programu się pomylił) :).

Cały czas chodzi mi o odpowiedź na pytanie: czy taka metoda pomiaru będzie miarodajna? Czy wartość "korekcji balansu bieli" użyta do doprowadzenia zdjęcia do neutralnej bieli jest równa "temperaturze barwowej" tego zdjęcia przed korekcją?

Jacek_Z
26-01-2008, 15:28
klikam "zmierz balans" i UFRAW mierzy mi jaką trzeba ustawić wartość balansu, żeby zaznaczony obszar był neutralnie biały
proszę precyzyjniej. Co to znaczy "mierzy mi"? Ustawia do bieli czy pokazuje ile to K?


Program nie może więc wyświetlać błędnej wartości z własnego pomiaru (no chyba, że autor programu się pomylił) :)
Owszem, może i wyświatla błednia. Tak, autor programu nie tyle sie pomylił, co nie ma podanych ile K jest nastawionych, nawet jak jest to napisane w exif! Programy te zrównuja kolorystykę do bieli nie na podstawie exifa!
cały czas piszę - że wyświetla źle wartość w K! mimo, że doprowadza do prawidłowego balansu.

nie możesz wypróbowac tych diodek? Bo nie jest istotne ile to K, ale czy jest to tyle samo co w starej diodzie. Zrób zdj białej kartki oświatlonej na przemian jedna i drugą diodą - zobacz, czy się róznia kolorem.
W dodatku zakładasz, że producent podaje prawidłowo ten parametr i trzyma to normy, a ja bym sie bardzo nie zdziwił gdyby tak nie było.


Czy wartość "korekcji balansu bieli" użyta do doprowadzenia zdjęcia do neutralnej bieli jest równa "temperaturze barwowej" tego zdjęcia przed korekcją?
nie rozumiem, proszę o doprecyzowanie.
powinniśmy przejść na GG albo Skype, bo się nie dogadamy.

Co do programów innych niż NC i NX. Wyobraź sobie, że twój woltomierz :) został rozkręcony, a po skręceniu skala pomiarowa została źle spasowana. Teraz ty dokonujesz na niej odczytów swoim UFRAW. Wyniki pomiarów mozna sobie .... co do wartości K. Za to program bez problemu doprowadzi do bieli/szarosci każdy wskazany mu punkt, bo musi po prostu doprowadzić do tego by w tym punkcie R=G=B.

Zink
26-01-2008, 17:28
proszę precyzyjniej. Co to znaczy "mierzy mi"? Ustawia do bieli czy pokazuje ile to K?
Ustawia do bieli i podaje na ile K ustawił. Może zrzut z ekranu pokaże więcej: http://img297.imageshack.us/img297/9854/balanszk0.jpg .

Owszem, może i wyświatla błednia. Tak, autor programu nie tyle sie pomylił, co nie ma podanych ile K jest nastawionych, nawet jak jest to napisane w exif! Programy te zrównuja kolorystykę do bieli nie na podstawie exifa!
No przecież o to chodzi, żeby było bez EXIFa, bo sam mówisz, że z NEF-owego EXIFa tylko NC odczytuje dobrze. Program doprowadza do tego, żeby (w uproszczeniu) R=B=G. Ponieważ balans bieli ustawiony w aparacie nie ma wpływu na NEF, to program ustawia to na podstawie tego, co zarejestrowała matryca, bez żadnych korekt. W każdym razie mam nadzieję, że tak właśnie jest.

cały czas piszę - że wyświetla źle wartość w K! mimo, że doprowadza do prawidłowego balansu.
Na jakiej podstawie twierdzisz, że źle wyświetla wartość K? Dotąd pisałeś (z tego co zrozumiałem), że inne programy źle podają wartość K zapisaną w EXIFie przez aparat. Tutaj mamy inną sytuację: program sam mierzy temperaturę nie oglądając się na EXIF.

nie możesz wypróbowac tych diodek? Bo nie jest istotne ile to K, ale czy jest to tyle samo co w starej diodzie. Zrób zdj białej kartki oświatlonej na przemian jedna i drugą diodą - zobacz, czy się róznia kolorem.
No właśnie nie mogę, bo diodki są jeszcze w sklepie internetowym, więc nie mogę ich sprawdzić przed zakupem.

W dodatku zakładasz, że producent podaje prawidłowo ten parametr i trzyma to normy, a ja bym sie bardzo nie zdziwił gdyby tak nie było.
Sądzę, że dokładność jest wystarczająca.

nie rozumiem, proszę o doprecyzowanie.
Mamy białą ścianę oświetloną światłem o temperaturze 4000K. W celu otrzymania R=G=B na wynikowym zdjęciu musimy:
a) ustawić w aparacie balans = 4000K, czy
b) ustawić jakąś inną wartość (która zniesie się z 4000K ściany i w efekcie zdjęcie wyjdzie neutralne?)

powinniśmy przejść na GG albo Skype, bo się nie dogadamy.
gg:4298361, zapraszam :)

W instrukcji nie znalazłem informacji ile K odpowiada poszczególnym ustawieniom balansu.

Jacek_Z
26-01-2008, 22:48
Ustawia do bieli i robi to prawidłowo


i podaje na ile K ustawił. i podaje to nieprawidłowo



No przecież o to chodzi, żeby było bez EXIFa, bo sam mówisz, że z NEF-owego EXIFa tylko NC odczytuje dobrze.
...
Na jakiej podstawie twierdzisz, że źle wyświetla wartość K? Dotąd pisałeś (z tego co zrozumiałem), że inne programy źle podają wartość K zapisaną w EXIFie przez aparat

czytaj precyzyjniej co napisałem, źle to zrozumiałeś , dane z Exifa pokazuje dobrze (pokazuje to nawet opanda - do tego nie trzeba otwierać pliku)


Tutaj mamy inną sytuację: program sam mierzy temperaturę nie oglądając się na EXIF.
on jej nie mierzy! Nie ma jak.


Mamy białą ścianę oświetloną światłem o temperaturze 4000K. W celu otrzymania R=G=B na wynikowym zdjęciu musimy:
a) ustawić w aparacie balans = 4000K
oczywiście tak.

zdaje się, że cały problem jest związany z tym: http://forum.nikon.org.pl/showthread.php?t=1442
to moje przypuszczenia, że nikon umozliwia innym dekodowanie WB tak by kolor był OK, ale nie do końca - ile to K to wie tylko nikon. I dotyczy to chyba wszystkich body wypuszczanych od czasu D2X, a nie tylko tych aparatów o których jest w linku.

Zink
27-01-2008, 12:34
i podaje to nieprawidłowo
Skąd wiesz? Są chyba jakieś ogólnie znane wzory (normy) na wyznaczenie takich rzeczy, nie?


czytaj precyzyjniej co napisałem, źle to zrozumiałeś , dane z Exifa pokazuje dobrze (pokazuje to nawet opanda - do tego nie trzeba otwierać pliku)
Miałem na myśli EXIF w pliku RAW (to w sumie nie nazywa się EXIF, tylko metadane, ale wiadomo o co chodzi). Przecież sam niżej piszesz: "... nikon umozliwia innym dekodowanie WB tak by kolor był OK, ale nie do końca", Chodzi o dekodowanie WB z metadanych zapisanych w RAWie?


on jej nie mierzy! Nie ma jak.
Miałem na myśli, że oblicza.


oczywiście tak.
No to ta kwestia jest wyjaśniona, trzeba jeszcze ustalić pozostałe szczegóły.


zdaje się, że cały problem jest związany z tym: http://forum.nikon.org.pl/showthread.php?t=1442
to moje przypuszczenia, że nikon umozliwia innym dekodowanie WB tak by kolor był OK, ale nie do końca - ile to K to wie tylko nikon. I dotyczy to chyba wszystkich body wypuszczanych od czasu D2X, a nie tylko tych aparatów o których jest w linku.
Ja się już kompletnie pogubiłem i nie wiem o czym aktualnie rozmawiamy (może dlatego nie możemy dojść do porozumienia). Czy rozmawiamy o:
1. Wartości balansu zapisanych w metadanych RAW (których inne programy nie odczytują prawidłowo).
2. Obliczaniu balansu na podstawie tylko i wyłącznie wartości pikseli RAWa (czego inne programy nie potrafią prawidłowo wykonać).

Z początku twojej odpowiedzi wynika, że mówisz o 2, a z końca - że o 1, więc fajnie by było dojść z tym do porozumienia :).

Jeśli o 2, to chciałbym wiedzieć dlaczego tak uważasz i które programy robią to prawidłowo.

Jacek_Z
27-01-2008, 14:40
Skąd wiesz? Są chyba jakieś ogólnie znane wzory (normy) na wyznaczenie takich rzeczy, nie?
nie, nie ma takich wzorów. Skąd program analizujący zdjęcie ma wiedziec czy zrobiono zdjęcie kartki zółtej czy białej? On może odkorygować z żółtej na białą i pokazać, że to WB jest wiele niższy. Program musi dostać dane z body ile to K, bo inaczej spokojnie wybalansuje biel, ale za chiny nie będzie wiedział ile to K.



Ja się już kompletnie pogubiłem i nie wiem o czym aktualnie rozmawiamy
ja pomału już też :-D


i które programy robią to prawidłowo. od początku piszę - na pewno nikonowskie, NC i NX. Inne raczej nie. Wiem, że PS nie, C1 nie, więc na inne też bym nie liczył.

Zink
27-01-2008, 20:04
nie, nie ma takich wzorów. Skąd program analizujący zdjęcie ma wiedziec czy zrobiono zdjęcie kartki zółtej czy białej? On może odkorygować z żółtej na białą i pokazać, że to WB jest wiele niższy. Program musi dostać dane z body ile to K, bo inaczej spokojnie wybalansuje biel, ale za chiny nie będzie wiedział ile to K.
Hmm, UFRAW jakoś to jednak oblicza, bo spróbowałem kilka wartości i dla tych samych mnożników kanałów dostaję zawsze tą samą temperaturę (np. dla mnożników R=1, G=1 i Z=1 pokazuje temperaturę 4241K) niezależnie od balansu ustawionego w aparacie (czyli olewa WB z metadanych). Zaczynam się zastanawiać co właściwie oznacza ta wartość, którą on pokazuje...

A co do lampki, zrobiłem taki test, że ustawiłem monitor na 6500K, biały ekran. Poświeciłem lampką w monitor i wyszło, że lampka jest nieco zimniejsza niż 6500K, co właściwie rozwiązuje problem, bo i tak najzimniejsza dioda, jaka jest dostępna ma właśnie 6500K :).

Dzięki wszystkim za pomoc.