Pomiar bokeh
3. Metodologia
3.1 Akwizycja obrazów
W pierwszym kroku musimy uzyskać jądro K splotu. Dla wyidealizowanego aparatu o nieskończonej rozdzielczości i nieograniczonym zakresie dynamiki, jądrem splotu byłby nieostry obraz nieskończenie małego punktu. W świecie rzeczywistym aproksymujemy go robiąc w kontrolowanych warunkach zdjęcie punktowego źródła światła. W przykładach towarzyszących artykułowi użyto w tym celu diody LED.
Następujący wzór (zob. np. [Ray02]) podaje przybliżoną średnicę obrazu punktowego źródła światła rejestrowanego za pomocą obiektywu o ogniskowej f dla wartości przysłony N:

gdzie S1 oznacza odległość obiektywu od płaszczyzny ostrości, zaś S2 odległość od źródła światła. Wzór ten jest używany przez kalkulatory głębi ostrości, gdzie za c przyjmuje się średnicę krążka rozproszenia. W naszym jednak przypadku, oczekujemy, iż c będzie na tyle duże aby jądro splotu poddawało się analizie. Załóżmy, że sensor aparatu składa się z X × Y kwadratowych pikseli ułożonych w postaci siatki prostokątnej o wymiarach W × H milimetrów. Jeśli teraz oczekiwanym rozmiarem jądra jest d pikseli, to c = d · W/X. Traktując S2 jako ustalony parametr, możemy rozwiązać równanie (2) ze względu na S1:

Procedura akwizycji obrazów okazuje się być więc zbliżona do stosowanej w przypadku pomiaru komy obiektywu. Wszystko czego potrzebujemy, to stabilnie zamocowany aparat wraz z badanym obiektywem oraz dioda LED umieszczona przed obiektywem w ustalonej odległości S2:

Ustawiając ostrość obiektywu na punkt odległy o wyliczoną wartość S1 otrzymujemy nieostry obraz punktowego źródła światła, stanowiący dane wejściowe do analizy numerycznej opisanej w następnym podrozdziale. Bokeh może być zróżnicowany w różnych obszarach obrazu, zatem należy wykonać zdjęcia diody zarówno umieszczonej na osi optycznej obiektywu jak również blisko krawędzi bryły widzenia. Ponieważ wraz z przymykaniem przysłony charakter rozmycia obrazów pozaogniskowych może ulegać zmianie, procedurę należy powtórzyć dla różnych wartości przysłony.
3.2. Przetwarzanie obrazów
Z poprzedniego kroku otrzymaliśmy zdjęcie cyfrowe w postaci macierzy P = [p(x,y)] o wymiarach X × Y pikseli. Zakładamy przy tym, że elementy macierzy są znormalizowane do przedziału jednostkowego [0,1], gdzie 0 oznacza czerń, zaś 1 biel. Na zdjęciu tym zarejestrowany jest nieostry obraz punktowego źródła światła mający średnicę około d pikseli. Proponowana procedura analizy bokeh składa się z następujących etapów, które kolejno omówimy:- odszumienie obrazu;
- wyznaczenie centroidu;
- obcięcie obrazu;
- przejście do współrzędnych biegunowych;
- wyznaczenie współczynnika CD (odstępstwa od symetrii kołowej);
- kompensacja odstępstwa od symetrii kołowej;
- wyznaczenie współczynnika MV (odstępstwa od monotoniczności).
1. Pierwszym krokiem jest odszumienie obrazu, gdyż szum (zwłaszcza w dominujących ciemnych partiach zdjęcia) może znacząco zafałszować wyniki dalszych obliczeń, a w szczególności wyznaczenie współrzędnych centroidu. Ilość znanych algorytmów odszumiania obrazów cyfrowych jest obecnie niemała, poczynając od zwykłego odcięcia aż po metody z zakresu analizy falkowej (por. np. [BCM05]).
2–3. W następnym etapie następuje obcięcie macierzy P do kwadratowego sąsiedztwa centroidu obrazu źródła światła. Współrzędne (x_c, y_c) centroidu wyznaczamy jako środek ciężkości binaryzacji macierzy P (por. np. [Jah05, rozdz. 19, par. 3]):

gdzie t jest parametrem binaryzacji zapewniającym wydzielenie obrazu źródła światła z tła. Jądro splotu K= [k(x,y)] jest wycinkiem kwadratowym o boku 2δ obrazu P scentrowanym w punkcie (xc,yc). Oczywiście 2δ > d (w przykładach na końcu artykułu użyto δ = d):

4.
Następnym etapem jest przekształcenie jądra do współrzędnych biegunowych, otrzymujemy w ten sposób nową macierz K1 = [k1(r,φ)] za pomocą wzoru:

gdzie przez

5. Teraz, wykorzystując wybrany algorytm wykrywania krawędzi, dla każdego kąta φ wyznaczamy odpowiadający mu promień rφ tak, aby zbiór { k1(rφ, φ): φ ∊ [0,2π) } tworzył krawędź obrazu źródła światła (a więc nośnika jądra). Współczynnik CD wyznaczamy teraz ze wzoru (1). Przypomnijmy:

6. Naszym kolejnym celem jest określenie uśrednionego przebiegu zmienności natężenia światła wzdłuż promienia jądra. W tym celu dokonujemy wyrównania promieni dla wszystkich wartości φ. Pamiętając, że operujemy na obrazie przekształconym do współrzędnych biegunowych, jedyne co należy zrobić, to przemnożyć każdą kolumnę macierzy K1 przez współczynnik E(rφ )/rφ , gdzie φ oznacza kąt odpowiadający danej kolumnie. Otrzymujemy w ten sposób nową macierz K2 = [k2(r,φ)] (jak poprzednio, 1,φ oznacza ciągłą rekonstrukcję sygnału dyskretnego kolumny macierzy K1 dla kąta φ):

W efekcie powyższych zabiegów, obraz diody zajmuje pierwszych E(rφ) wierszy macierzy K2.
7.
Średni przebieg zmienności intensywności światła wzdłuż promienia jądra otrzymujemy wyznaczając średnią z każdego wiersza macierzy K2:

Jeżeli teraz oznaczymy przez J(r) minimalną intensywność światła w kole o promieniu r, czyli J(r) := min{ I(s): s ≤ r }, to współczynnik MV definiujemy jako odległość (w normie ℓ1) funkcji intensywności od J, przeskalowaną dodatkowo o czynnik 1/E(rφ), aby uniezależnić wynik od uzyskanej faktycznie średnicy obrazu źródła światła:
