Warto poczytać
Jak naukowo wyznaczyć gain i offset kamery CCD
- Szczegóły
- Odsłony: 5876
Astrokamera QHY8L, którą posiadam, to świetny instrument rejestrujący nadlatujące fotony jednak żeby wykorzystać w pełni jej możliwości trzeba ustawić jej dwa podstawowe parametry: gain i offset. Instrukcja obsługi ten temat traktuje bardzo enigmatycznie i trudno z jej pomocą precyzyjnie ustawić te parametry. Grzebiąc w sieci natknąłem się na ciekawe opracowanie Todd-a Benko i Branta Felixa, przetłumaczyłem to i tu wrzuciłem. Być może będzie to pomocne dla posiadaczy tych kamer.
Todd Benko & Brant Felix, 2011
(tłumaczenie Tadeusz Smela)
Wielu ludzi spierało się o wartości ustawień gain i offset kamer CCD. Poniższa metoda powinna pomóc wyznaczyć optymalne ustawienia gaina i offsetu dla maksymalizacji wypełnienia pixela CCD. W tym przykładzie użyto Nebulocity do wyznaczenia gain i offset kamery QHY9M.
-
Wyznaczenie stanu pełnej saturacji
Potrzebujemy wyznaczyć jaka wartość pixela, wczytana z kamery CCD oznacza, że piksel jest kompletnie pełny. Potrzebujemy źródła światła. Każde źródło będzie dobre. Jasność nie jest ważna ale nie może być ani za ciemne ani za jasne. Jasność tylko determinuje jak długo będzie trwało wypełnienie pixela. Zbyt jasne światło wypełni pixel za szybko, przy zbyt ciemne przedłuży czas wypełniania pixela. W tym przykładzie użyta została żarówka 60W oświetlająca pokój. Teraz trzeba zdjąć pokrywę kamery i skierować ją na sufit ale nie bezpośrednio na źródło światła.
Wykonaj następujące kroki:
-
Ustaw gain i offset na standardowe minimalne wartości. W tym przykładzie gain=0 offset=100
-
Ustaw binning na żądana wartość, w tym przypadku 1x1
-
Wykonaj kolejne ekspozycje dla czasów ekspozycji zwiększających się podwójnie i (0.02, 0,04, 0,08, 0,16, 0,32, 0,64, 1,28 … sekund)
-
Zczytaj wartości średnie pixeli z całego obrazu
-
Powtarzaj te ekspozycje z wydłużanym dwukrotnie czasem ekspozycji aż do uzyskania najwyższej wartości
-
wartość najwyższa oznacza osiągnięcie wypełnienia pixela
Ekspozycja |
Wartość średnia |
0,02 |
8873 |
0,03 |
19438 |
0,08 |
24760 |
0,16 |
37585 |
0,32 |
58804 |
0,64 |
59144 |
1,28 |
59139 |
2,56 |
56131 |
5,12 |
56136 |
W tym przypadku osiągnęliśmy ten efekt przy czasie 0,64 sekundy.
2. Wyznaczenie wzmocnienia dla osiągnięcia wartości 65535 przy pełnym wypełnieniu pixela.
W poprzednim kroku wyznaczyliśmy oświetlenie i czas ekspozycji potrzebny do wypełnienia pixela. Teraz musimy wyznaczyć gain (wzmocnienie) dla którego wypełniony pixel powoduje maksymalną głębie bitową. Dla 16 bitowego przetwornika analogowo – cyfrowego jest to wartość 65535.
Należy wykonać następujące kroki:
-
Ustaw czas ekspozycji na wartość wyznaczona w poprzednim kroku, w tym przypadku 0,64s
-
Rejestruj obrazy z tego samego źródła światła zwiększając wartość gain o 2 w każdym kroku, zapisuj wartości średnie pixeli z całego obrazu
-
Powtarzaj rejestracje aż uzyskasz wartość 65535. Zwróć teraz uwagę na wartość minimum i maximum. Czasami wartość średnia może nie osiągnąć 65535 z powodu zimnych pixeli. Jeżeli wartość minimum osiągnie 65535 – zapisz to jako wartość średnią.
-
Został wyznaczony gain przy którym osiągnięto 65535, w tym przykładzie jest to 14
Ekspozycja 0.64sec
Gain |
2(3%) |
4 (6%) |
6 (9%) |
8 (12%) |
10 (15%) |
12 (19%) |
14 (22%) |
16 (25%) |
18 (28%) |
Wart.śr. |
55942 |
57429 |
58334 |
60679 |
62377 |
64242 |
65535 |
65535 |
65535 |
3. Wyznaczenie wartości OFFSET
Teraz używając wcześniej wyznaczoną wartość GAIN musimy wyznaczyć wartość OFFSET.
W tej procedurze będziemy wykonywali klatki BIAS, zwiększając wartość offset i zapisując wartości średnie.
Należy wykonać następujące kroki:
Załóż pokrywę na kamerę
Ustaw czas ekspozycji na najkrótszy możliwy czas. W tym przykładzie ustawiono czas 0.001s.
Jeśli posiadasz system chłodzenia – wyłącz go. Ustawienia dla niższych temperatur będzie wykonane w dalszej części procedury
Rejestruj klatki, zwiększając offset o 2 w każdej klatce. Zapisz wartości minimalne, średnie i maksymalne dla każdej klatki.
Powtarzaj rejestrację klatek tak długo aż uzyskasz wartość średnią w okolicach 1000
Włącz układ chłodzenia i powtórz całą procedurę dla zmniejszonych temperatur
.001sec -closed
Gain 14(22%) Temp 24C
Offset |
100 |
102 |
104 |
106 |
108 |
110 |
112 |
114 |
min |
0 |
0 |
0 |
0 |
160 |
431 |
727 |
981 |
śr |
0 |
0 |
0 |
29 |
284 |
549 |
838 |
1092 |
max |
0 |
0 |
111 |
369 |
658 |
889 |
1194 |
1482 |
Gain 14(22%) Temp 0C
Offset |
100 |
102 |
104 |
106 |
108 |
110 |
112 |
114 |
min |
0 |
0 |
0 |
0 |
123 |
389 |
684 |
980 |
śr |
0 |
0 |
0 |
0 |
245 |
508 |
795 |
1050 |
max |
0 |
0 |
0 |
0 |
792 |
1143 |
908 |
1362 |
Gain 14(22%) Temp -15C
Offset |
100 |
102 |
104 |
106 |
108 |
110 |
112 |
114 |
min |
0 |
0 |
0 |
0 |
125 |
385 |
685 |
937 |
śr |
0 |
0 |
0 |
0 |
252 |
497 |
805 |
1059 |
max |
0 |
0 |
0 |
0 |
404 |
1085 |
1169 |
1316 |
Wyznacz wartość offset przy której wartość pixela znajduje się w zakresie pomiedzy 500 a 1000. W tym przykładzie wybrano wartość 112
(w oryginale jest troszkę inaczej ale brzmi to dla mnie dziwnie „Determine an offset value where the lowest temperature will reasonably report a value between 500-1000 for all temperatures. In this example an offset of 112 was chosen.)
4. Ponowne oszacowanie wartości GAIN I OFFSET
Wartości gain i offset maja na siebie wpływ. Dla zoptymalizowania tych parametrów trzeba wrócić i ponownie oszacować wartość gain dla wyznaczonego offsetu.
Używając wartości offset wyznaczonej w poprzednim kroku wykonaj procedurę wyznaczenia GAIN jeszcze raz.
-
Ustaw czas ekspozycji na czas wyznaczony na samym początku (w tym przypadku 0,64s)
-
Ustaw offset na wartość wyznaczona w poprzednim kroku
-
Wykonaj ekspozycje z tego samego źródła światła zwiększając parametr GAIN o 2 w każdej ekspozycji
-
Zapisz wartości średnie dla każdej klatki
-
Powtarzaj ekspozycje aż wartość średnia pixela osiągnie wartość 65535. Zwróć uwagę na wartość minimalna i maksymalną. Czasami wartość średnia nie osiągnie 65535 z powodu zimnych pixeli. Jeżeli wartość minimalna osiągnie 65535 zapisz to jako wartość średnią.
-
Prawidłowy gain to ten przy którym osiągnięto lub zbliżono się do wartości 65535. W naszym przykładzie jest to 8.
Ekspozycja 0.64sec, Offset 112
Gain |
2(3%) |
4 (6%) |
6 (9%) |
8 (12%) |
10 (15%) |
12 (19%) |
14 (22%) |
16 (25%) |
18 (28%) |
Wart.śr. |
61644 |
63284 |
65016 |
65479 |
65535 |
65535 |
65535 |
65535 |
65535 |
Teraz pobawimy się troche matematyką i optymalizacją.
Gain =8 (12%) powoduje wypełnienie pixela.
Gdy zbliżamy się do wypełnienia pixela , liniowość konwertera analogowo-cyfrowego zmniejsza się na górnym końcu. Naszym celem jest redukcja efektu nieliniowego wypełniania pixela. Aby to poprawić, zwiększymy lekko gain. To spowoduje, że wartości piksela będą w liniowym zakresie pracy przetwornika analogowo cyfrowego.
W tym przypadku zwiększymy gain o 5%. W uproszczeniu – wartość 65535 uzyskamy gdy pixel będzie wypełniony w 95%.
W naszym przykładzie możemy przyjąć że optymalną wartością parametru GAIN będzie 12% + 5% = 17% - gain=11
Optymalne ustawienia uzyskane po tej procedurze to: GAIN=11, OFFSET=112